You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Andrei Shakirin (JIRA)" <ji...@apache.org> on 2014/02/06 13:04:10 UTC

[jira] [Comment Edited] (CXF-5434) IllegalStateException calling Oneway method using JMS and WSA

    [ https://issues.apache.org/jira/browse/CXF-5434?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13893293#comment-13893293 ] 

Andrei Shakirin edited comment on CXF-5434 at 2/6/14 12:02 PM:
---------------------------------------------------------------

Hi Dan,

I am afraid the issue is fixed only for RPC style in RPCOutInterceptor:
{code}
                if (operation.getOutput() == null) {
                    return;
 	 	 }
{code}
It is still reproducible for the document binding style.

Are rebasing of the response and creation of decoupled destination make sense for oneWay at all?  
MAPAggregator:
{code}
                if (isOneway
                    || !ContextUtils.isGenericAddress(maps.getReplyTo())) {
                    InternalContextUtils.rebaseResponse(maps.getReplyTo(),
                                                maps,
                                                message);
                }
{code}


was (Author: ashakirin):
Hi Dan,

I am afraid the issue is fixed only for RPC style in RPCOutInterceptor:
                if (operation.getOutput() == null) {
                    return;
 	 	 }
It is still reproducible for the document binding style.

Are rebasing of the response and creation of decoupled destination make sense for oneWay at all?  
MAPAggregator:
                if (isOneway
                    || !ContextUtils.isGenericAddress(maps.getReplyTo())) {
                    InternalContextUtils.rebaseResponse(maps.getReplyTo(),
                                                maps,
                                                message);
                }


> IllegalStateException calling Oneway method using JMS and WSA
> -------------------------------------------------------------
>
>                 Key: CXF-5434
>                 URL: https://issues.apache.org/jira/browse/CXF-5434
>             Project: CXF
>          Issue Type: Bug
>          Components: JAX-WS Runtime
>    Affects Versions: 2.7.5, 2.7.7
>            Reporter: Wouter Dhaeze
>            Assignee: Daniel Kulp
>             Fix For: 2.6.12, 2.7.9
>
>         Attachments: CXFTestServer.zip, incoming_soap_message_01.txt, server_logs_01.log
>
>
> When a client is calling a oneway method, the endpoint method is never called due to an IllegalStateException, when the endpoint has WS-Addressing policy enabled and the endpoint is called through JMS (activeMQ)
> {code}
> java.lang.IllegalStateException: IllegalStateException invoking http://www.w3.org/2005/08/addressing/none: Already connected
> 	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
> 	at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
> 	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
> 	at java.lang.reflect.Constructor.newInstance(Unknown Source)
> 	at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.mapException(HTTPConduit.java:1338)
> 	at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1327)
> 	at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:56)
> 	at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:622)
> 	at org.apache.cxf.interceptor.OneWayProcessorInterceptor.handleMessage(OneWayProcessorInterceptor.java:126)
> 	at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:271)
> 	at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)
> 	at org.apache.cxf.transport.jms.JMSDestination.onMessage(JMSDestination.java:235)
> 	at org.springframework.jms.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:536)
> 	at org.springframework.jms.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer.java:496)
> 	at org.springframework.jms.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContainer.java:467)
> 	at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:325)
> 	at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:263)
> 	at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:1059)
> 	at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop(DefaultMessageListenerContainer.java:1051)
> 	at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:948)
> 	at java.lang.Thread.run(Unknown Source)
> Caused by: java.lang.IllegalStateException: Already connected
> 	at java.net.HttpURLConnection.setFixedLengthStreamingMode(Unknown Source)
> 	at org.apache.cxf.transport.http.URLConnectionHTTPConduit$URLConnectionWrappedOutputStream.setFixedLengthStreamingMode(URLConnectionHTTPConduit.java:272)
> 	at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.thresholdNotReached(HTTPConduit.java:1085)
> 	at org.apache.cxf.io.AbstractThresholdOutputStream.close(AbstractThresholdOutputStream.java:99)
> 	at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1301)
> 	... 15 more
> {code}



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)