axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alexis Humphreys (JIRA)" <j...@apache.org>
Subject [jira] Commented: (AXIS2-4115) Incorrect wsaAction has embedded double quotes in header
Date Thu, 06 Nov 2008 16:54:01 GMT

    [ https://issues.apache.org/jira/browse/AXIS2-4115?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12645510#action_12645510
] 

Alexis Humphreys commented on AXIS2-4115:
-----------------------------------------

Here's the SOAP request (I used the SOAP Monitor applet for getting this info):

<?xml version='1.0' encoding='utf-8'?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
  <SOAP-ENV:Header>
    <To xmlns="http://www.w3.org/2005/08/addressing">http://192.168.110.50:8081/axis2/services/StockQuoteService.StockQuoteServiceHttpSoap11Endpoint/</To>
    <Action xmlns="http://www.w3.org/2005/08/addressing">"urn:getPrice"</Action>
    <ReplyTo xmlns="http://www.w3.org/2005/08/addressing">
      <Address>http://www.w3.org/2005/08/addressing/anonymous</Address>
    </ReplyTo>
    <MessageID xmlns="http://www.w3.org/2005/08/addressing">uuid:e55b555e-e6eb-4c2a-874f-1908627f7134</MessageID>
  </SOAP-ENV:Header>
  <SOAP-ENV:Body>
    <ns1:getPrice xmlns:ns1="http://quickstart.samples/xsd" xmlns:msgns="http://quickstart.samples/">
      <ns1:symbol>AAPL</ns1:symbol>
    </ns1:getPrice>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

According to the error message the problem is not with the SOAP action, but with the wsaAction.
Axis2 checks that soapAction == wsaAction  and they are not the same because soapAction is
urn:getPrice, but wsaAction is "urn:getPrice" (where the double quotes are part of the string).
In other words, the wsaAction value has double quotes as part of its value, which causes the
problem.



> Incorrect wsaAction has embedded double quotes in header
> --------------------------------------------------------
>
>                 Key: AXIS2-4115
>                 URL: https://issues.apache.org/jira/browse/AXIS2-4115
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>          Components: Addressing
>    Affects Versions: 1.4.1
>         Environment: Windows XP Pro SP3
> NetBeans 6.5 RC2
>            Reporter: Alexis Humphreys
>            Priority: Blocker
>
> I am using NetBeans (6.5 RC2 but earlier versions give same problem) and invoking web
service from a BPEL process. I am using the included Stock Quote example service included
as part of Axis2 for my testing. When invoking the service, I get an exception:
> [WARN] triggerActionMismatchFault: messageContext: [MessageContext: logID=urn:uuid:518E4F32694CC6E6CA1225402791676]
soapAction=urn:getPrice wsaAction="urn:getPrice"
> [ERROR] A header representing a Message Addressing Property is not valid and the message
cannot be processed
> org.apache.axis2.AxisFault: A header representing a Message Addressing Property is not
valid and the message cannot be processed
> 	at org.apache.axis2.addressing.AddressingFaultsHelper.triggerAddressingFault(AddressingFaultsHelper.java:373)
> 	at org.apache.axis2.addressing.AddressingFaultsHelper.triggerActionMismatchFault(AddressingFaultsHelper.java:222)
> 	at org.apache.axis2.handlers.addressing.AddressingInHandler.extractActionInformation(AddressingInHandler.java:533)
> 	at org.apache.axis2.handlers.addressing.AddressingInHandler.extractAddressingInformation(AddressingInHandler.java:239)
> 	at org.apache.axis2.handlers.addressing.AddressingInHandler.invoke(AddressingInHandler.java:152)
> 	at org.apache.axis2.engine.Phase.invoke(Phase.java:317)
> 	at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:264)
> 	at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:163)
> 	at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)
> 	at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:133)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
>        etc.
> The relevant portion of the WSDL is:
>     <wsdl:portType name="StockQuoteServicePortType">
>         <wsdl:operation name="getPrice">
>             <wsdl:input message="axis2:getPriceRequest" wsaw:Action="urn:getPrice"/>
>             <wsdl:output message="axis2:getPriceResponse" wsaw:Action="urn:getPriceResponse"/>
>         </wsdl:operation>
>         <wsdl:operation name="update">
>             <wsdl:input message="axis2:updateRequest" wsaw:Action="urn:update"/>
>         </wsdl:operation>
>     </wsdl:portType>
>     <wsdl:binding name="StockQuoteServiceSoap11Binding" type="axis2:StockQuoteServicePortType">
>         <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
       
>         <wsdl:operation name="getPrice">
>             <soap:operation soapAction="urn:getPrice" style="document"/>
>             <wsdl:input>
>                 <soap:body use="literal"/>
>             </wsdl:input>
>             <wsdl:output>
>                 <soap:body use="literal"/>
>             </wsdl:output>
>         </wsdl:operation>
>         <wsdl:operation name="update">
>             <soap:operation soapAction="urn:update" style="document"/>
>             <wsdl:input>
>                 <soap:body use="literal"/>
>             </wsdl:input>
>         </wsdl:operation>
>     </wsdl:binding>
> As you can see, the "getPrice" operation specifies a soapAction of "urn:getPrice". The
exception complains that the soapAction is not same as wsaAction. Indeed the wsaAction has
double quotes around it, while soapAction does not.
> Note that regardless of the wsaw:action value in the WSDL, the wsaAction is always the
soapAction but enclosed in double quotes.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org


Mime
View raw message