Hi
I'm being given an error from axis because the
wsdl file of the webservices I'm trying to make calls to defines two different
operations with the same name. I've contacted the owners of the webservice
and they assure me that it isn't a mistake in their wsdl, the service is
designed that way as each of the two operations take different parameters and
which is being called is dynamically determined by the server based on the
parameters passed.
Sadly my code doesn't get as far as making the call
as axis seems unhappy with there being two operations with the same name.
Does anyone know if the wsdl specification explicitly prohibits operation-name
overloading like this or is the object specific to axis?
The exception I get is below, as the wsdl contains
two operations name CardPaymentRequest (I've masked the portType, it is correct
in the original output)
javax.xml.rpc.ServiceException: Error processing
WSDL document:
java.lang.IllegalArgumentException: Duplicate operation with name=CardPaymentRequest, found in portType '{http://xxx.xxx.xxx.uk/}CardPaymentsSoap'. at org.apache.axis.client.Service.initService(Service.java:249) at org.apache.axis.client.Service.<init>(Service.java:164) at org.apache.axis.client.ServiceFactory.createService(ServiceFactory.java:198) at govConnect.WebServiceTools.<init>(WebServiceTools.java:79) at ep.callWS.service(callWS.java:58) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.catalina.servlets.InvokerServlet.serveRequest(InvokerServlet.java:419) at org.apache.catalina.servlets.InvokerServlet.doPost(InvokerServlet.java:169) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929) at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:793) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:702) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:571) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:644) at java.lang.Thread.run(Thread.java:536) Chris Mannion IT Junction 020 8452 4274 |
- Duplicate operation names Chris Mannion
- Re: Duplicate operation names Anne Thomas Manes
- Re: Duplicate operation names Anne Thomas Manes
- Re: Duplicate operation names Chris Mannion