2010-08-10 116 views
2

我想使用它的來自Java的wsdl來調用.net中的webservice。 我想在eclipse Galileo SR2中使用Apache Axis 2創建Client stub。 與Netbean 6.9相同。使用WSDL從Java調用.net Webservice

我在webservice中重載了「AddOrgService」方法。 看起來像是在創建一個問題。

什麼是解決方案?

但我得到以下異常:

IWAB0399E Error in generating Java from WSDL: java.lang.IllegalArgumentException: Duplicate 

operation with name=AddOrgService, found in portType 

'{http://ensim.com/unifyws/Exchange2K7WS}ExchangeManagerSoap'. 
    java.lang.IllegalArgumentException: Duplicate operation with name=AddOrgService, found 

in portType '{http://ensim.com/unifyws/Exchange2K7WS}ExchangeManagerSoap'. 
    at com.ibm.wsdl.PortTypeImpl.getOperation(Unknown Source) 
    at com.ibm.wsdl.xml.WSDLReaderImpl.parseBindingOperation(Unknown Source) 
    at com.ibm.wsdl.xml.WSDLReaderImpl.parseBinding(Unknown Source) 
    at com.ibm.wsdl.xml.WSDLReaderImpl.parseDefinitions(Unknown Source) 
    at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(Unknown Source) 
    at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(Unknown Source) 
    at com.ibm.wsdl.xml.WSDLReaderImpl.readWSDL(Unknown Source) 
    at org.apache.axis.wsdl.symbolTable.SymbolTable.populate(SymbolTable.java:516) 
    at org.apache.axis.wsdl.symbolTable.SymbolTable.populate(SymbolTable.java:495) 
    at org.apache.axis.wsdl.gen.Parser$WSDLRunnable.run(Parser.java:361) 
    at java.lang.Thread.run(Unknown Source) 

回答

1

我不認爲SOAP允許使用相同的名稱(這將是在.NET Web服務重載方法的結果)多種操作。或者給方法不同的名稱,或者使用屬性讓.NET在SOAP端創建不同的操作名稱,而不改變方法名稱本身。