You are viewing a plain text version of this content. The canonical link for it is here.
Posted to sandesha-dev@ws.apache.org by "Chamikara Jayalath (JIRA)" <ji...@apache.org> on 2006/06/29 18:18:30 UTC
[jira] Resolved: (SANDESHA2-7)
SandeshaReportsTest.testSequenceReports fails as the terminate sequence
message is not received
[ http://issues.apache.org/jira/browse/SANDESHA2-7?page=all ]
Chamikara Jayalath resolved SANDESHA2-7:
----------------------------------------
Resolution: Fixed
tests are pasing now after the correction in Axis2
> SandeshaReportsTest.testSequenceReports fails as the terminate sequence message is not received
> -----------------------------------------------------------------------------------------------
>
> Key: SANDESHA2-7
> URL: http://issues.apache.org/jira/browse/SANDESHA2-7
> Project: Apache Sandesha2
> Type: Bug
> Reporter: Andrew Gatford
> Attachments: SandeshaReportsTestFailure.patch
>
> SandeshaReportsTest.testSequenceReports (and others) fail as the terminate sequence message is not received.
> The problem appears to have been caused by a change in the AxisEngine.send method
> if (!msgContext.isPaused()) {
> // write the Message to the Wire
> TransportOutDescription transportOut = msgContext.getTransportOut();
> TransportSender sender = transportOut.getSender();
> //there may be instance where you want to send the response to replyTo
> if (msgContext.isServerSide() && msgContext.getTo() != null) {
> try {
> String replyToAddress = msgContext.getTo().getAddress();
> if (!(AddressingConstants.Final.WSA_ANONYMOUS_URL.equals(replyToAddress)
> || AddressingConstants.Submission.WSA_ANONYMOUS_URL.equals(replyToAddress))) {
> URI uri = new URI(replyToAddress);
> String scheme = uri.getScheme();
> if (!transportOut.getName().getLocalPart().equals(scheme)) {
> ConfigurationContext configurationContext = msgContext.getConfigurationContext();
> transportOut = configurationContext.getAxisConfiguration()
> .getTransportOut(new QName(scheme));
> if (transportOut == null) {
> throw new AxisFault("Can not find the transport sender : " + scheme);
> }
> sender = transportOut.getSender();
> }
> }
> //
> } catch (URISyntaxException e) {
> log.info("error in infer transport from replyTo address");
> }
> }
> The terminate message sets the Transport out to be the Sandesha2TransportOutDesc.
> The check transportOut.getName().getLocalPart().equals(scheme) fails as the scheme returned is http but the getLocalPart is Sandesha2TransportOutDesc.
> This means the default http sender is used.
> This then means the message isn't sent by the sender thread and ACK messages are not piggy backed.
--
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: sandesha-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: sandesha-dev-help@ws.apache.org