2010-08-10 65 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端创建不同的操作名称,而不改变方法名称本身。