WSDL警告:不是SOAP端口,它没有soap:地址

时间:2011-05-22 14:26:53

标签: java web-services soap wsdl bpel

当我使用Netbeans v 6.7.1创建Web服务客户端时,我收到这些警告,提供以下wsdl。

  

解析WSDL ...

     

[警告]端口   “ComposedWebServicePort”不是   一个SOAP端口,它没有soap:地址
  第29行   文件:/ C:/Users/blavi/Documents/NetBeansProjects/ComposedClient/xml-resources/web-service-references/ComposedWebService/wsdl/ComposedWebService.wsdl

     

[警告]端口   “ComposedWebServiceServicePort”:不是   标准SOAP端口。生成的   工件可能无法与JAXWS一起使用   运行。第29行   文件:/ C:/Users/blavi/Documents/NetBeansProjects/ComposedClient/xml-resources/web-service-references/ComposedWebService/wsdl/ComposedWebService.wsdl

触发警告的WSDL是:

<?xml version="1.0" encoding="UTF-8"?>
<definitions xmlns="http://schemas.xmlsoap.org/wsdl/" name="ComposedWebService" targetNamespace="http://j2ee.netbeans.org/wsdl/CompositionBpelModule/ComposedWebService" xmlns:ns0="http://www.w3.org/2001/XMLSchema" xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap" xmlns:tns="http://j2ee.netbeans.org/wsdl/CompositionBpelModule/ComposedWebService" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl">
    <types/>
    <message name="EnterComposition">
        <part name="compositionIN" type="ns0:string"/>
    </message>
    <message name="ExitComposition">
        <part name="compositionOUT" type="ns0:string"/>
    </message>
    <portType name="ComposedWebServicePortType">
        <operation name="ComposedWebServiceSOperation">
            <input message="tns:EnterComposition" name="input1"/>
            <output message="tns:ExitComposition" name="output1"/>
        </operation>
    </portType>
    <binding name="ComposedWebServiceBinding" type="tns:ComposedWebServicePortType">
        <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
        <operation name="ComposedWebServiceOperation">
            <soap:operation soapAction="http://j2ee.netbeans.org/wsdl/CompositionBpelModule/ComposedWebService/ComposedWebServiceOperation" style="document"/>
            <input name="input1">
                <soap:body use="literal"/>
            </input>
            <output name="output1">
                <soap:body use="literal"/>
            </output>
        </operation>
    </binding>
    <service name="ComposedWebService">
        **<port binding="tns:ComposedWebServiceBinding" name="ComposedWebServicePort">**
            <soap:address location="http://localhost:8184/ComposedWebService/ComposedWebServicePort"/>
        </port>
    </service>
    <plnk:partnerLinkType name="ComposedWebServicePLT">
        <plnk:role name="compositionPartnerLinkType" portType="tns:ComposedWebServicePortType"/>
    </plnk:partnerLinkType>
</definitions>

标有**的行是显示警告的第29行。 当我尝试调用具有此wsdl的Web服务时,我总是得到不支持的端点地址异常。这些警告和例外可以相关吗?我该如何解决这个问题?

谢谢

1 个答案:

答案 0 :(得分:0)

xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"

SOAP名称空间声明不正确;它应该有一个向前的斜线。

<part name="compositionOUT" type="ns0:string"/>

如果我没弄错的话,你需要element属性。


  

ComposedWebServiceServiceService

更简洁的名称可能会使文档更具可读性。