You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Aki Yoshida (JIRA)" <ji...@apache.org> on 2011/02/18 17:53:38 UTC
[jira] Created: (CXF-3349) NPE may be thrown in WS-RM scenarios at
the server side when rebasing the response
NPE may be thrown in WS-RM scenarios at the server side when rebasing the response
----------------------------------------------------------------------------------
Key: CXF-3349
URL: https://issues.apache.org/jira/browse/CXF-3349
Project: CXF
Issue Type: Bug
Components: WS-* Components
Affects Versions: 2.3.2
Reporter: Aki Yoshida
Fix For: 2.4, 2.3.3
Some WS-RM scenarios may sometimes result in the following exception at the provider/server side under the piggyback mode..
{quote}
java.lang.NullPointerException: null
at org.apache.cxf.ws.addressing.ContextUtils$2.getBackChannel(ContextUtils.java:471) ~[org.apache.cxf.cxf-bundle-2.3.2.jar:2.3.2]
at org.apache.cxf.interceptor.OneWayProcessorInterceptor.handleMessage(OneWayProcessorInterceptor.java:87) ~[na:na]
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:255) ~[org.apache.cxf.cxf-bundle-2.3.2.jar:2.3.2]
at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:113)
...
{quote}
The cause of this problem seems to be in the rebaseResponse method of org.apache.cxf.ws.addressing.ContextUtils, where the destination endpoint is determined in the following code:
{code}
421 Destination destination = createDecoupledDestination(
422 exchange, reference);
423 exchange.setDestination(destination);
{code}
As this reference parameter could become null, it needs a similar handling as in the code a few lines above:
{code}
388 reference == null
389 ? ContextUtils.getNoneEndpointReference()
390 : reference
{code}
Alternatively, the reference variable can be set to ContextUtils.getNoneEndpointReference() at the beginning of this rebaseResponse method to prevent this problem.
This problem does not occur in 2.2.x because this second use/reference of the referece variable is only present in 2.3.x.
I believe this change will solve this issue.
Regards, aki
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Assigned: (CXF-3349) NPE may be thrown in WS-RM scenarios at
the server side when rebasing the response
Posted by "Daniel Kulp (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CXF-3349?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Daniel Kulp reassigned CXF-3349:
--------------------------------
Assignee: Daniel Kulp
> NPE may be thrown in WS-RM scenarios at the server side when rebasing the response
> ----------------------------------------------------------------------------------
>
> Key: CXF-3349
> URL: https://issues.apache.org/jira/browse/CXF-3349
> Project: CXF
> Issue Type: Bug
> Components: WS-* Components
> Affects Versions: 2.3.2
> Reporter: Aki Yoshida
> Assignee: Daniel Kulp
> Fix For: 2.4, 2.3.3
>
> Original Estimate: 24h
> Remaining Estimate: 24h
>
> Some WS-RM scenarios may sometimes result in the following exception at the provider/server side under the piggyback mode..
> {quote}
> java.lang.NullPointerException: null
> at org.apache.cxf.ws.addressing.ContextUtils$2.getBackChannel(ContextUtils.java:471) ~[org.apache.cxf.cxf-bundle-2.3.2.jar:2.3.2]
> at org.apache.cxf.interceptor.OneWayProcessorInterceptor.handleMessage(OneWayProcessorInterceptor.java:87) ~[na:na]
> at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:255) ~[org.apache.cxf.cxf-bundle-2.3.2.jar:2.3.2]
> at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:113)
> ...
> {quote}
> The cause of this problem seems to be in the rebaseResponse method of org.apache.cxf.ws.addressing.ContextUtils, where the destination endpoint is determined in the following code:
> {code}
> 421 Destination destination = createDecoupledDestination(
> 422 exchange, reference);
> 423 exchange.setDestination(destination);
> {code}
> As this reference parameter could become null, it needs a similar handling as in the code a few lines above:
> {code}
> 388 reference == null
> 389 ? ContextUtils.getNoneEndpointReference()
> 390 : reference
> {code}
> Alternatively, the reference variable can be set to ContextUtils.getNoneEndpointReference() at the beginning of this rebaseResponse method to prevent this problem.
> This problem does not occur in 2.2.x because this second use/reference of the referece variable is only present in 2.3.x.
> I believe this change will solve this issue.
> Regards, aki
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] Resolved: (CXF-3349) NPE may be thrown in WS-RM scenarios at
the server side when rebasing the response
Posted by "Daniel Kulp (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CXF-3349?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Daniel Kulp resolved CXF-3349.
------------------------------
Resolution: Fixed
> NPE may be thrown in WS-RM scenarios at the server side when rebasing the response
> ----------------------------------------------------------------------------------
>
> Key: CXF-3349
> URL: https://issues.apache.org/jira/browse/CXF-3349
> Project: CXF
> Issue Type: Bug
> Components: WS-* Components
> Affects Versions: 2.3.2
> Reporter: Aki Yoshida
> Assignee: Daniel Kulp
> Fix For: 2.4, 2.3.3
>
> Original Estimate: 24h
> Remaining Estimate: 24h
>
> Some WS-RM scenarios may sometimes result in the following exception at the provider/server side under the piggyback mode..
> {quote}
> java.lang.NullPointerException: null
> at org.apache.cxf.ws.addressing.ContextUtils$2.getBackChannel(ContextUtils.java:471) ~[org.apache.cxf.cxf-bundle-2.3.2.jar:2.3.2]
> at org.apache.cxf.interceptor.OneWayProcessorInterceptor.handleMessage(OneWayProcessorInterceptor.java:87) ~[na:na]
> at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:255) ~[org.apache.cxf.cxf-bundle-2.3.2.jar:2.3.2]
> at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:113)
> ...
> {quote}
> The cause of this problem seems to be in the rebaseResponse method of org.apache.cxf.ws.addressing.ContextUtils, where the destination endpoint is determined in the following code:
> {code}
> 421 Destination destination = createDecoupledDestination(
> 422 exchange, reference);
> 423 exchange.setDestination(destination);
> {code}
> As this reference parameter could become null, it needs a similar handling as in the code a few lines above:
> {code}
> 388 reference == null
> 389 ? ContextUtils.getNoneEndpointReference()
> 390 : reference
> {code}
> Alternatively, the reference variable can be set to ContextUtils.getNoneEndpointReference() at the beginning of this rebaseResponse method to prevent this problem.
> This problem does not occur in 2.2.x because this second use/reference of the referece variable is only present in 2.3.x.
> I believe this change will solve this issue.
> Regards, aki
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira