Howto change Axis server-config.wsdd so that we don't expect a SOAPAction

Posted by GKForcare on Server Fault See other posts from Server Fault or by GKForcare
Published on 2010-06-18T11:50:14Z Indexed on 2011/01/30 7:27 UTC
Read the original article Hit count: 272

Filed under:
|
|

The problem I'm facing is that the client of my service will never send me a SOAPAction header.

How can I tell Axis to still map to the incomming call to my service implementation anyway. I did bump into tricks like adding a Handler like this:

<handler name="ReportMapper" type="java:com.mycompany.project.ReportMapper"/>

<transport name="http">
    <requestFlow>
        <handler type="ReportMapper"/>
        <handler type="URLMapper"/>
        <handler type="java:org.apache.axis.handlers.http.HTTPAuthHandler"/>
    </requestFlow>
    <parameter name="qs:list" value="org.apache.axis.transport.http.QSListHandler"/>
    <parameter name="qs:wsdl" value="org.apache.axis.transport.http.QSWSDLHandler"/>
    <parameter name="qs.list" value="org.apache.axis.transport.http.QSListHandler"/>
    <parameter name="qs.method" value="org.apache.axis.transport.http.QSMethodHandler"/>
    <parameter name="qs:method" value="org.apache.axis.transport.http.QSMethodHandler"/>
    <parameter name="qs.wsdl" value="org.apache.axis.transport.http.QSWSDLHandler"/>
</transport>

but that did not help. The mapper is found during the creation of the WSDL but when calling the service, the invoke of the handler is not used.

I do need to note that when I simulate the SOAP-call using @curl@ and I do add the SOAPAction header, the invoke is called.

Any help would be most appreciated.

© Server Fault or respective owner

Related posts about soap

Related posts about header