1

我有一个这样配置的网络服务。

<jaxws:endpoint 
    id="helloWorld"
    xmlns:hello="http://service.test.com/"
    serviceName="hello:MyServiceImplService"
    endpointName="hello:MyServiceImplPort" address="jms://"
    implementor="com.test.service.MyServiceImpl" >
        <jaxws:features>          
            <bean class="org.apache.cxf.feature.LoggingFeature" />      
            <bean class="org.apache.cxf.transport.jms.JMSConfigFeature">
                <property name="jmsConfig" ref="jmsConfig"/>
            </bean>
        </jaxws:features>
  </jaxws:endpoint>`

我想让 cxf 为我生成 wsdl。当服务是 http 时,我可以从这样的 url 访问 wsdl http://localhost:8080/server/hello?wsdl,在我将传输更改为 jms 后,我如何访问 wsdl?我需要发送什么 jms 消息来获取 wsdl。或者我必须先编写 wsdl 并通过常规的 http 请求公开它。我问这个是因为客户端需要知道 wsdl 才能获取所有类型和绑定信息来生成类。客户端应该已经知道如何连接队列。

4

1 回答 1

0

您可以使用命令行 java2ws 工具(请参阅http://cxf.apache.org/docs/java-to-ws.html)将您的实现类传递给它。还有一个来自 Ant 脚本的示例调用。它将生成您的客户端可以用来生成客户端代码的 WSDL。

于 2013-09-17T15:13:19.560 回答