Hello, I'm having the following problem. In my service I have to
implement two interfaces and they have an operation named the same but
messages from every operation are in different namespaces. I've solved
it in the wsdl with the following:

<wsdl:message name="CompletedMessage">
        <wsdl:part element="wsctx:completed" name="content"/>
</wsdl:message>
.............................
<wsdl:operation name="completed">
        <wsdl:input
        wsa:Action="http://docs.oasis-open.org/schemas/2005/10/wsctx/completed";
        message="tns:CompletedMessage"/>
</wsdl:operation>

and


<wsdl:message name="CompensatorCompletedMessage">
        <wsdl:part name="content" element="lra:completed"/>
</wsdl:message>
...........................
<wsdl:operation name="CompensatorCompleted">
        <wsdl:input
wsa:Action="http://www.webservicestransactions.org/schemas/wstxm/tx-lra/2003/03/completed";
        message="tns:CompensatorCompletedMessage"/>
</wsdl:operation>

WSDL2Java has generated two capabilities and every one of them has a
complete() method.
Now when I try to invoke my resouce I get:

java.lang.RuntimeException: [ID = 'MissingOperationImplementations']
The WSDL file '/wsdl//Installation.wsdl' has the following operations
which have no match in any of the resource's capabilities:
[http://www.webservicestransactions.org/schemas/wstxm/tx-lra/2003/03/completed]
       at 
org.apache.muse.core.descriptor.SimpleResourceDescriptor.createCapabilityDefinitions(SimpleResourceDescriptor.java:138)
       at 
org.apache.muse.core.descriptor.SimpleResourceDescriptor.load(SimpleResourceDescriptor.java:397)
       at 
org.apache.muse.core.descriptor.SimpleDeploymentDescriptor.createResourceDefinitions(SimpleDeploymentDescriptor.java:74)
       at 
org.apache.muse.core.descriptor.SimpleDeploymentDescriptor.load(SimpleDeploymentDescriptor.java:173)
       at 
org.apache.muse.core.platform.AbstractIsolationLayer.initialize(AbstractIsolationLayer.java:144)
       at 
org.apache.muse.core.platform.axis2.AxisIsolationLayer.handleRequest(AxisIsolationLayer.java:72)
       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
       at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
       at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
       at java.lang.reflect.Method.invoke(Method.java:585)
       at 
org.apache.axis2.receivers.RawXMLINOutMessageReceiver.invokeBusinessLogic(RawXMLINOutMessageReceiver.java:88)
       at 
org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.receive(AbstractInOutSyncMessageReceiver.java:39)
       at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:493)
       at 
org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:319)
       at 
org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:247)
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
       at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
       at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:228)
       at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
       at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
       at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
       at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
       at 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:216)
       at 
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
       at 
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:634)
       at 
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:445)
       at java.lang.Thread.run(Thread.java:595)

Also I had problem with some operations that did not have the same
name as its messages but they seem to be passing once I created
methods for them in my capability with the operation name instead of
the message element name but this doesn't work for complete. Although
I've created a CompensatorCompleted() method in my capability it keeps
complaining. What's the convention Muse uses to route a message to a
capability and a particular method? How can I change my
wsdl/capability to get it working? I can modify the wsdl but not the
xsd files that defines lra:completed and wsctx:completed elements.

--
Saludos.
José Antonio Sánchez

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to