axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Andreas Veithen (JIRA)" <j...@apache.org>
Subject [jira] [Moved] (AXIS2-5541) Mail transport: synchronous invocation style doesn't work correctly
Date Fri, 10 May 2013 10:55:16 GMT

     [ https://issues.apache.org/jira/browse/AXIS2-5541?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Andreas Veithen moved TRANSPORTS-19 to AXIS2-5541:
--------------------------------------------------

    Component/s:     (was: Mail)
                 Mail
            Key: AXIS2-5541  (was: TRANSPORTS-19)
        Project: Axis2  (was: Axis2 Transports)
    
> Mail transport: synchronous invocation style doesn't work correctly
> -------------------------------------------------------------------
>
>                 Key: AXIS2-5541
>                 URL: https://issues.apache.org/jira/browse/AXIS2-5541
>             Project: Axis2
>          Issue Type: Bug
>          Components: Mail
>            Reporter: Andreas Veithen
>
> The change in r698486 introduced support for the synchronous invocation style in the
mail transport. This was implemented by using a callback pattern where the transport sender
waits until the transport listener receives the response message and invokes the callback.
This however doesn't work as expected. The reason is that after receiving the message, the
mail transport listener will close the input stream for the message (and potentially release
some other resources, such as closing the mail folder). On the server side, this works well
because the listener invokes AxisEngine.receive, which only returns after the service has
processed the message. However, on the client side, it will invoke the callback, which will
not process the message, but only store it. By the time the client attempts to process the
response, the underlying input stream is already closed. This leads to errors such as this
one:
> java.lang.RuntimeException: [was class java.io.IOException] Stream closed
>         at com.ctc.wstx.util.ExceptionUtil.throwRuntimeException(ExceptionUtil.java:18)
>         at com.ctc.wstx.sr.StreamScanner.throwLazyError(StreamScanner.java:706)
>         at com.ctc.wstx.sr.BasicStreamReader.safeFinishToken(BasicStreamReader.java:3655)
>         at com.ctc.wstx.sr.BasicStreamReader.getText(BasicStreamReader.java:809)
>         at org.apache.axiom.util.stax.wrapper.XMLStreamReaderWrapper.getText(XMLStreamReaderWrapper.java:160)
>         at org.apache.axiom.util.stax.wrapper.XMLStreamReaderWrapper.getText(XMLStreamReaderWrapper.java:160)
>         at org.apache.axiom.om.impl.builder.StAXBuilder.createOMText(StAXBuilder.java:289)
>         at org.apache.axiom.om.impl.builder.StAXBuilder.createOMText(StAXBuilder.java:252)
>         at org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:267)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

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


Mime
View raw message