I solved this problem by requesting a change in the service XML.  I changed
the null soapAction point to the appropriate method.

It seems to me that "options.setAction=<your method>" should work from the
client code, but it doesn't.

If you cannot get the service to change, manually change it yourself and
rerun wsdl2java on your local copy.

There is probably a better way, but I do not know it.

Hopefully, someone will tell us.

Jon



Chandan Gupta-2 wrote:
> 
> Hi Anne,
> 
> Thanks for your response, I am still looking for a solution, it does not
> seem pretty obvious how I can disengage WS-addressing. What is remarkable
> is
> that I have other services running on Axis2 in the same format(exactly
> same
> configuration), where the client is sending SOAPAction="" header and the
> invocation is dispatched correctly. 
> 
> I will update this thread as soon as I get a solution.
> 
> Regards,
> Chandan
> 
> -----Original Message-----
> From: Anne Thomas Manes [mailto:[EMAIL PROTECTED] 
> Sent: Thursday, January 03, 2008 1:01 AM
> To: [email protected]
> Subject: Re: [AXIS2] - Please help - stuck with SOAPAction="" from axis1
> client to axis2 service
> 
> You've configured the Axis2 dispatcher to look for a WS-Addressing
> Action parameter rather than a SOAPAction URI. See this article for
> information about dispatching: http://wso2.org/library/176.
> 
> Anne
> 
> On Jan 2, 2008 8:36 AM, Chandan Gupta <[EMAIL PROTECTED]> wrote:
>>
>>
>>
>>
>> Hi,
>>
>>
>>
>> Im a newbie and have been struggling with this issue for days now. I have
> a
>> WSDL, placed inline here.
>>
>> <?xml version="1.0" encoding="UTF-8"?>
>>
>> <wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/";
>> xmlns:tns="http://profileadmin.neustar.com/ArtifactResolutionService/";
>> xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/";
>>
>>                xmlns:xsd="http://www.w3.org/2001/XMLSchema";
>> name="ArtifactResolutionService"
>>
>>
>>
> targetNamespace="http://profileadmin.neustar.com/ArtifactResolutionService/";
>>
>>                xmlns:xsd1="urn:oasis:names:tc:SAML:2.0:protocol"
>>
>>                xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/";>
>>
>>                <wsdl:types>
>>
>>                               <xsd:schema
>> xmlns:xsd="http://www.w3.org/2001/XMLSchema";
>>
>>
>> xmlns="http://www.w3.org/2001/XMLSchema";
>>
>>                        xmlns:ds="http://www.w3.org/2000/09/xmldsig#";
>>
>>
> targetNamespace="http://www.w3.org/2000/09/xmldsig#";
>>
>>                        version="0.1" elementFormDefault="qualified">
>>
>>
>>
>>                                              <!-- Basic Types Defined for
>> Signatures -->
>>
>> (Irrelevant info deleted)
>>
>> </wsdl:types>
>>
>> <wsdl:message name="resolveArtifactResponse">
>>
>>                <wsdl:part name="body"
>> element="xsd1:ArtifactResponse"></wsdl:part>
>>
>> </wsdl:message>
>>
>> <wsdl:message name="resolveArtifactRequest">
>>
>>                <wsdl:part name="body"
>> element="xsd1:ArtifactResolve"></wsdl:part>
>>
>> </wsdl:message>
>>
>> <wsdl:portType name="ArtifactResolutionService">
>>
>>        <wsdl:operation name="resolveArtifact">
>>
>>                               <wsdl:input
>> message="tns:resolveArtifactRequest"></wsdl:input>
>>
>>                               <wsdl:output
>> message="tns:resolveArtifactResponse"></wsdl:output>
>>
>>        </wsdl:operation>
>>
>> </wsdl:portType>
>>
>> <wsdl:binding name="ArtifactResolutionServiceSOAP"
>> type="tns:ArtifactResolutionService">
>>
>> <soap:binding style="document"
>> transport="http://schemas.xmlsoap.org/soap/http"/>
>>
>> <wsdl:operation name="resolveArtifact">
>>
>> <soap:operation
>>
> soapAction="http://profileadmin.abc.com/ArtifactResolutionService/resolveArt
> ifact"/>
>>
>> <wsdl:input><soap:body use="literal"/></wsdl:input>
>>
>> <wsdl:output><soap:body use="literal"/></wsdl:output>
>>
>> </wsdl:operation>
>>
>>     </wsdl:binding>
>>
>> <wsdl:service name="ArtifactResolutionService">
>>
>> <wsdl:port binding="tns:ArtifactResolutionServiceSOAP"
>> name="ArtifactResolutionServiceSOAP">
>>
>> <soap:address location="http://www.example.org/"/>
>>
>> </wsdl:port>
>>
>> </wsdl:service>
>>
>> </wsdl:definitions>
>>
>>
>>
>> I have generated Axis1 client and axis2 (Xmlbeans databinding) service.
> Here
>> is my service.xml
>>
>>
>>
>> <?xml version="1.0" encoding="UTF-8"?>
>>
>> <!-- This file was auto-generated from WSDL -->
>>
>> <!-- by the Apache Axis2 version: 1.3  Built on : Aug 10, 2007 (04:45:47
>> LKT) -->
>>
>> <service name="ArtifactResolutionServiceSOAP">
>>
>>                <messageReceivers>
>>
>>                               <messageReceiver
>> mep="http://www.w3.org/ns/wsdl/in-out";
>>
>>
>>
> class="com.neustar.controlid.services.axis2.ArtifactResolutionServiceMessage
> ReceiverInOut"
>> />
>>
>>                </messageReceivers>
>>
>>                <parameter name="ServiceClass">
>>
>>
>> com.neustar.controlid.services.axis2.ArtifactResolutionServiceSkeleton
>>
>>                </parameter>
>>
>>                <parameter name="useOriginalwsdl">false</parameter>
>>
>>                <parameter
> name="modifyUserWSDLPortAddress">true</parameter>
>>
>>                <operation name="resolveArtifact"
>>
>>                               mep="http://www.w3.org/ns/wsdl/in-out";>
>>
>>                               <actionMapping>\"\"</actionMapping>
>>
>>
>>
> <outputActionMapping>http://profileadmin.neustar.com/ArtifactResolutionServi
> ce/resolveArtifactResponse</outputActionMapping>
>>
>>                </operation>
>>
>> </service>
>>
>>
>>
>> Problem is even though I have confirmed that axis1 client is sending
>> SOAPAction="", somehow axis2 dispatcher is unable to dispatch the
> operation
>> - I get the following exception
>>
>>
>>
>> faultString: The endpoint reference (EPR) for the Operation not found is
>> http://127.0.0.1:8080/controlid/services/ArtifactResolutionServiceSOAP
>> and
>> the WSA Action =
>>
>>  faultActor:
>>
>>  faultNode:
>>
>>  faultDetail:
>>
>>                {}Exception:org.apache.axis2.AxisFault: The endpoint
>> reference (EPR) for the Operation not found is
>> http://127.0.0.1:8080/controlid/services/ArtifactResolutionServiceSOAP
>> and
>> the WSA Action =
>>
>>                at
>>
> org.apache.axis2.engine.DispatchPhase.checkPostConditions(DispatchPhase.java
> :86)
>>
>>                at org.apache.axis2.engine.Phase.invoke(Phase.java:308)
>>
>>                at
>> org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:212)
>>
>>                at
>> org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:132)
>>
>>                at
>>
> org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HT
> TPTransportUtils.java:275)
>>
>>                at
>> org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:120)
>>
>>
>>
>>
>>
>> Can anybody help please - This is SOS
>>
>>
>>
>>
>>
>> Regards,
>>
>> Chandan
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/-AXIS2-----Please-help---stuck-with-SOAPAction%3D%22%22-from-axis1-client-to-axis2-service-tp14578513p14680112.html
Sent from the Axis - User mailing list archive at Nabble.com.


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

Reply via email to