[ 
http://issues.apache.org/jira/browse/AXIS2-1282?page=comments#action_12439759 ] 
            
Eran Chinthaka commented on AXIS2-1282:
---------------------------------------

David,

There is another side of this story when the server is trying to send a message 
as a response without an action. I think that is not acceptable, even if client 
is allowed to send invalid message.

My suggestion is to implement #4 but with a flag using which we can revert back 
to #1. 

In concrete terms: we will have the flag validateAddressingHeaders = true. But 
can be set to false using options. 

> 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