tutorial - wso2 curso
¿Cómo accedo a las propiedades de un Servicio usando una API en WSO2 GREG? (1)
Puedo agregar y leer atributos usando la API de gobierno de esta manera:
registry = Util.initialize();
governanceRegistry = Util.getGovernanceRegistry(registry);
serviceManager = new ServiceManager(governanceRegistry);
services = Arrays.asList(serviceManager.getAllServices());
services.get(2).addAttribute("what", "isthis");
serviceManager.updateService(services.get(2));
Sin embargo, cuando uso la WSO2 Governance Registry Management Console y abro el servicio, agregué el parámetro / valor "what" / "isthis", no lo veo en la lista de Propiedades .
¿Cómo accedo a la lista de propiedades (no atributos) usando una API? Me cuesta entender cómo se relacionan entre sí.
Puede recuperarlo usando el siguiente código.
List<Resource> paths = getServicePath(registry, "/_system/governance/trunk/services");
for (Resource service : paths) {
// we''ve got all the services here
Properties props = service.getProperties();
for (Object prop : props.keySet()) {
System.out.println(prop + " - " + props.get(prop));
}
}
Consulte esta publicación de blog de muestra para obtener el código completo.
---- Agregado más tarde ---
Esto está más alineado con tu código.
Registry governanceRegistry = GovernanceUtils.getGovernanceUserRegistry(registry, "admin");
ServiceManager serviceManager = new ServiceManager(governanceRegistry);
Service[] services = serviceManager.getAllServices();
for(int i =0 ; i<services.length ; i++){
Service service = services[i];
Resource resource = governanceRegistry.get(service.getPath());
System.out.println(resource.getProperties());
}