我正在開發消耗現有SOAP Web服務的第二個客戶端應用程序。 我使用最新版的Apache CXF 2.3工具Apache CXF WSDLToJava錯誤:操作已存在。如何繞過?
的WSDL2Java -client -ant http://172.20.0.22/someletters/TradingServer.asmx?WSDL
,並得到
WSDLToJava錯誤現有的WSDL生成Java:java.lang.IllegalArgumentException異常:有名稱的操作[{甕:someschema:TradingServer} GetTradeSummary]已經存在於此服務中
有邏輯,因爲在查看WSDL文件時可以看到2個類似的操作GetTradeSummary,但是具有不同的soapAction。
<wsdl:operation name="GetTradeSummary">
<soap:operation soapAction="urn:someschema/GetTradeSummary" style="document" />
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="GetTradeSummary">
<soap:operation soapAction="urn:someschema/GetTradeSummary_Open" style="document" />
<wsdl:input name="GetTradeSummary_Open">
<soap:body use="literal" />
</wsdl:input>
<wsdl:output name="GetTradeSummary_Open">
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
a)它是否被某些標準認爲是錯誤的?哪一個?
b)有沒有辦法繞過這個,爲其餘的生成Java腳手架? 在CXF WSDL to Java tool web page中沒有提到任何東西,除了-autoNameResolution不起作用。
http://www.apacheserver.net/the-Apache-CXF/ – 2010-10-29 08:49:13