Hi, folks,
I found something strange about the mechanism how axis2 service
identifies the operation corresponding to a request message.
When I used the following code to invoke a service:
...
OMElement result = call.invokeBlocking("operationName", payload);
...
If the SOAP body is *not* something like
<soapenv:Body>
<ns:operationName xmlns:ns="http://www.example.org/ns">
...
</ns:operationName>
</soapenv:Body>
I would get the fault message like
<faultstring>Operation Not found EPR is http://the targetEPR and WSA
Action = </faultstring>
However, if I hardcode the SOAPAction part and send it to the
targetEPR, the service works fine.
I checked the HTTP content of the requests in all the cases, and found
that the SOAPAction part in the HTTP head is always *empty*.
I am not sure if this behavior is by design. And I would like to know
how to specify the SOAPAction part when I use Call client.
Thanks,
Don