我可以使用这样的治理API添加和读取属性:
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));但是,当我使用WSO2治理注册表管理控制台并打开服务时,我只是添加了参数/值"what"/"isthis",我没有在属性列表中看到它。
如何使用API访问属性列表(而不是属性)?我很难弄清楚这些是如何相互关联的。
发布于 2013-03-28 00:18:56
您可以使用以下代码检索它。
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));
}
}有关完整代码,请参阅此示例博客帖子。
这与您的代码更加一致。
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());
}https://stackoverflow.com/questions/15669564
复制相似问题