0

我正在使用 JUDDI 库在 JUDDI 注册我的服务。当我执行下面的代码时,我得到了错误

{urn:uddi-org:v3_service}UDDI_Security_Port 不是有效服务。有效的服务是:{urn:uddi-org:v3_service}UDDISecurityService

代码:

try {
         String clazz = UDDIClientContainer.getUDDIClerkManager(null).
         getClientConfig().getUDDINode("default").getProxyTransport();
         Class<?> transportClass = ClassUtil.forName(clazz, Transport.class);

         if (transportClass!=null) {

            transport = (Transport) transportClass.getConstructor(String.class).newInstance("default");  
            System.out.println("Second satement");
                 security = transport.getUDDISecurityService();
          juddiApi = transport.getJUDDIApiService();
          publish = transport.getUDDIPublishService();
                 inquiry = transport.getUDDIInquiryService();
         }   

     } catch (Exception e) {
         e.printStackTrace();
     }   

下面是 Maven 依赖项,我用于 JUDDI。org.apache.juddi juddi-client 3.0.4 org.apache.juddi juddi-core 3.1.5

下面是我的 uddi.xml 文件

<uddi>
    <reloadDelay>5000</reloadDelay>
    <manager name="example-manager">
        <nodes>
            <node>
                <name>default</name>
                <description>Main jUDDI node</description>  
                <properties>
                    <property name="serverName"  value="localhost"/>
                    <property name="serverPort"  value="8080"/>
                    <property name="keyDomain"   value="juddi.apache.org"/>
                    <property name="department"  value="businesses" />
                </properties>
                <proxyTransport>
                    org.apache.juddi.v3.client.transport.JAXWSTransport
                </proxyTransport>

    <custodyTransferUrl>
        http://${serverName}:${serverPort}/juddiv3/services/custody-transfer?wsdl
    </custodyTransferUrl>
    <inquiryUrl>
        http://${serverName}:${serverPort}/juddiv3/services/inquiry?wsdl
    </inquiryUrl>
    <publishUrl>
        http://${serverName}:${serverPort}/juddiv3/services/publish?wsdl
    </publishUrl>
    <securityUrl>
        http://${serverName}:${serverPort}/juddiv3/services/security?wsdl
    </securityUrl>
    <subscriptionUrl>
        http://${serverName}:${serverPort}/juddiv3/services/subscription?wsdl
    </subscriptionUrl>
    <subscriptionListenerUrl>
        http://${serverName}:${serverPort}/juddiv3/services/subscription-listener?wsdl
    </subscriptionListenerUrl>
    <juddiApiUrl>
        http://${serverName}:${serverPort}/juddiv3/services/juddi-api?wsdl
    </juddiApiUrl>

            </node>
        </nodes>
    </manager>
</uddi>

我已经在我的本地主机上安装了 JUDDI 门户。

4

1 回答 1

0

第一个问题,您的依赖关系不正常。org.apache.juddi juddi-client 3.1.5 或可用的最新版本

第二个问题是您缺少依赖项 org.apache.juddi uddi-ws 3.1.5 或可用的最新版本

juddi-core 仅用于托管 Web 服务和访问数据库。

那应该解决它。

ASF SVN 有很多示例,包括应该始终保持最新的 POM。这是最新的开发主干 http://svn.apache.org/repos/asf/juddi/trunk/juddi-examples/hello-world/pom.xml

这是 3.1.5 http://svn.apache.org/repos/asf/juddi/tags/juddi-3.1.5/juddi-examples/hello-world/pom.xml

于 2013-12-31T02:40:30.400 回答