org.wso2.carbon.registry.ws.client.registry.WSRegistryServiceClient
レジストリ オブジェクトの作成に使用しようとしています。目的は、特定の属性を持つサービスを検索することです。次のコードを実行しようとしている間:
WSRegistryServiceClient registry = new WSRegistryServiceClient(serverURL, "admin", "admin", configContext);
org.wso2.carbon.governance.api.services.ServiceManager serviceManager = new org.wso2.carbon.governance.api.services.ServiceManager(registry);
Service[] services = serviceManager.findServices(new ServiceFilter()
{
public boolean matches(Service service) throws GovernanceException {
String attributeVal = service.getAttribute("owner_name");
return (attributeVal != null && attributeVal.equals("someName"));
}
});
クラスキャスト例外が発生します
java.lang.ClassCastException: org.wso2.carbon.registry.ws.client.registry.WSRegistryServiceClient cannot be cast to org.wso2.carbon.registry.core.session.UserRegistry exception
at org.wso2.carbon.governance.api.util.GovernanceUtils.retrieveGovernanceArtifactByPath(GovernanceUtils.java:819)
at org.wso2.carbon.governance.api.common.GovernanceArtifactManager.getAllGovernanceArtifacts(GovernanceArtifactManager.java:663)
at org.wso2.carbon.governance.api.services.ServiceManager.getAllServices(ServiceManager.java:213)
at org.wso2.carbon.governance.api.services.ServiceManager.findServices(ServiceManager.java:186)
WSO2 のドキュメントでは、WSRegistryServiceClient を使用してサービスを追加する方法が示されていますが、サービスを検索する方法を示す例は見つかりませんでした。同じクライアントを使用してサービスを検索しましたが、上記の例外がスローされます。サービスの検索方法は?
また、WSRegistryServiceClient から UserRegistry オブジェクトを作成する方法はありますか、または UserRegistry を作成する別の API がありますか?