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

Daniel Kulp resolved CXF-6092.
------------------------------
       Resolution: Fixed
    Fix Version/s: 2.7.14
                   3.0.3
         Assignee: Daniel Kulp

Added some NPE checks.  Hopefully that resolves this.

> When there is bad connection/timeout, ClientImpl throws NullPointerException
> ----------------------------------------------------------------------------
>
>                 Key: CXF-6092
>                 URL: https://issues.apache.org/jira/browse/CXF-6092
>             Project: CXF
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 2.7.11, 2.7.12, 2.7.13, 3.0.2
>            Reporter: Nikolai Penkov
>            Assignee: Daniel Kulp
>             Fix For: 3.0.3, 2.7.14
>
>
> When the connection when executing WebService all is interrupted or timed 
> out, there is some kind of racing issue and the result is
> (the stacktrace and src code is from v. 2.7.11, but the same code is also in 
> the other versions)
> Caused by: java.lang.NullPointerException
>     at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:396)
> I suppose the problem is that when the connection is timed out/closed, the 
> destroy() method is called in ClientImpl, where there is a statement that 
> sets 
> responseContext = null;
> and then in the finalize block of the invoke, there is the code that produces 
> the NPE:
> } finally {
>             if (context != null) {
>                 Map<String, Object> resp = CastUtils.cast((Map<?, 
> ?>)context.get(RESPONSE_CONTEXT));
>                 if (resp != null) {
> --NPE----->                    responseContext.put(Thread.currentThread(), 
> resp);
>                 }
>             }
>         }
> One possible solutions is to add verification also for not null value in 
> responseContext.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to