我正在尝试使用Java中的wsdl来调用.net中的webservice。 我正在尝试使用eclipse Galileo SR2中的Apache Axis 2创建客户端存根。 与Netbean 6.9相同的例外。
我在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)
答案 0 :(得分:1)
我不认为SOAP允许多个具有相同名称的操作(这可能是.NET webservice中重载方法的结果)。要么为方法赋予不同的名称,要么使用属性使.NET在SOAP端创建不同的操作名称而不更改方法名称本身。