AddressingInHandler doesn't set the <wsa:To> properly
-----------------------------------------------------

         Key: AXIS2-79
         URL: http://issues.apache.org/jira/browse/AXIS2-79
     Project: Apache Axis 2.0 (Axis2)
        Type: Bug
    Versions: 0.9    
 Environment: All
    Reporter: Gopalakrishnan


AddressingInHandler.extractCommonAddressingParameters() doesn't set the wsa:To 
properly.

 if (AddressingConstants.WSA_TO.equals(soapHeaderBlock.getLocalName())) {
      epr = messageInformationHeadersCollection.getTo();
       if (epr == null) {
            epr = new EndpointReference(AddressingConstants.WSA_TO, 
soapHeaderBlock.getText());
             messageInformationHeadersCollection.setTo(epr);
       }
}

The above code from the AddressingInHandler.extractCommonAddressingParameters() 
won't override the 'To' already set by the TransportListener. 

The code sould have been 

 if (AddressingConstants.WSA_TO.equals(soapHeaderBlock.getLocalName())) {
      epr = messageInformationHeadersCollection.getTo();
       if (epr == null) {
            epr = new EndpointReference(AddressingConstants.WSA_TO, "");
             messageInformationHeadersCollection.setTo(epr);
       }
      epr.setAddress(soapHeaderBlock.getText())
}

The actual problem we faced is the when the wsa:To has a value with a query 
string(e.g 
http://localhost:8081/axis2/services/DiagnosticLogRecordService/Get?ResourceURI=(http://example.com/xxx)),
 messageInformationHeadersCollection.getTo() returns me the value withought the 
query 
string(http://localhost:8081/axis2/services/DiagnosticLogRecordService/Get)!.

-- 
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

Reply via email to