[ 
http://issues.apache.org/jira/browse/AXIS2-1282?page=comments#action_12439748 ] 
            
David Illsley commented on AXIS2-1282:
--------------------------------------

There are 4 options which spring to mind for what we can do in the client when 
there is no action available:
1. Send invalid WS-Addressing headers (miss out wsa:Action)
2. Make up an invalid action and use that (illegal per the ws-addressing specs)
3. Send no WS-Addressing headers and trace why.
4. Throw an exception back to the user client code stating that an action is 
required

1 is the status quo

My preference order for this is 4,3,1,2 though I know that there are people who 
favour 1 (requiring that users do things right).

> wsa:Action setting in client side
> ---------------------------------
>
>                 Key: AXIS2-1282
>                 URL: http://issues.apache.org/jira/browse/AXIS2-1282
>             Project: Apache Axis 2.0 (Axis2)
>          Issue Type: Bug
>          Components: Addressing
>         Environment: Any
>            Reporter: Saminda Wishwajith Abeyruwan
>
> The outbound messages from client with addressing engaged, will send the 
> messages out even though the wsa:Action is not set. But in server, 
> AddressingInHandler checks, whether the wsa:Action is available. [Revision: 
> 451881]
> ======Outbound  from clinet =====================================
> POST /axis2/services/axis25660MyService HTTP/1.1
> SOAPAction: ""
> User-Agent: Axis2
> Host: 127.0.0.1
> Transfer-Encoding: chunked
> Content-Type: text/xml; charset=UTF-8
> 266
> <?xml version='1.0' encoding='UTF-8'?>
>    <soapenv:Envelope xmlns:wsa="http://www.w3.org/2005/08/addressing"; 
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";>
>       <soapenv:Header>
>          
> <wsa:To>http://localhost:8081/axis2/services/axis25660MyService</wsa:To>
>          <wsa:ReplyTo>
>             
> <wsa:Address>http://www.w3.org/2005/08/addressing/anonymous</wsa:Address>
>          </wsa:ReplyTo>
>          
> <wsa:MessageID>urn:uuid:44EF548113EA6F115411597872691661</wsa:MessageID>
>       </soapenv:Header>
>       <soapenv:Body>
>          <example1:echo xmlns:example1="http://example1.org/example1";>
>             <example1:Text>Axis2 Echo String </example1:Text>
>          </example1:echo>
>       </soapenv:Body>
>    </soapenv:Envelope>0
> ===================================================================
> ==========From Server=================================
> HTTP/1.1 500 Internal Server Error
> Server: Apache-Coyote/1.1
> Set-Cookie: JSESSIONID=7A80E2A0E9FA5603A18607F03A338CD7; Path=/axis2
> Content-Type: text/xml;charset=UTF-8
> Transfer-Encoding: chunked
> Date: Mon, 02 Oct 2006 11:07:49 GMT
> Connection: close
> d52
> <?xml version='1.0' encoding='UTF-8'?>
>    <soapenv:Envelope xmlns:wsa="http://www.w3.org/2005/08/addressing"; 
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";>
>       <soapenv:Header>
>          <wsa:To>http://www.w3.org/2005/08/addressing/anonymous</wsa:To>
>          <wsa:ReplyTo>
>             
> <wsa:Address>http://www.w3.org/2005/08/addressing/none</wsa:Address>
>          </wsa:ReplyTo>
>          
> <wsa:MessageID>urn:uuid:33588AF256D2031E33115978726980812</wsa:MessageID>
>          <wsa:Action>http://www.w3.org/2005/08/addressing/fault</wsa:Action>
>          <wsa:RelatesTo 
> wsa:RelationshipType="http://www.w3.org/2005/08/addressing/reply";>urn:uuid:44EF548113EA6F115411597872691661</wsa:RelatesTo>
>          <wsa:FaultDetail>
>             <wsa:ProblemHeaderQName>wsa:Action</wsa:ProblemHeaderQName>
>          </wsa:FaultDetail>
>       </soapenv:Header>
>       <soapenv:Body>
>          <soapenv:Fault>
>             <faultcode>wsa:MessageAddressingHeaderRequired</faultcode>
>             <faultstring>A required header representing a Message Addressing 
> Property is not present</faultstring>
>             <detail>
>                <Exception>org.apache.axis2.AxisFault: A required header 
> representing a Message Addressing Property is not present     at 
> org.apache.axis2.addressing.AddressingFaultsHelper.triggerAddressingFault(AddressingFaultsHelper.java:138)
>    at 
> org.apache.axis2.addressing.AddressingFaultsHelper.triggerMessageAddressingRequiredFault(AddressingFaultsHelper.java:105)
>     at 
> org.apache.axis2.handlers.addressing.AddressingFinalInHandler.checkForMandatoryHeaders(AddressingFinalInHandler.java:60)
>      at 
> org.apache.axis2.handlers.addressing.AddressingInHandler.extractAddressingInformation(AddressingInHandler.java:172)
>   at 
> org.apache.axis2.handlers.addressing.AddressingInHandler.invoke(AddressingInHandler.java:95)
>  at org.apache.axis2.engine.Phase.invoke(Phase.java:377) at 
> org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:513)       at 
> org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:484)      at 
> org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:326)
>        at 
> org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:234)     
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:709) at 
> javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>     at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
>   at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
>   at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) 
>        at 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) 
>        at 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
>     at 
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)  
> at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) 
>   at 
> org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
>    at 
> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
>    at 
> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
>       at 
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
>    at java.lang.Thread.run(Thread.java:595)</Exception>
>             </detail>
>          </soapenv:Fault>
>       </soapenv:Body>
>    </soapenv:Envelope>0
> ================

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira



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

Reply via email to