Andreas Vallen created CXF-6600:
-----------------------------------

             Summary: Sudden repeating NPE on token request by STSClient
                 Key: CXF-6600
                 URL: https://issues.apache.org/jira/browse/CXF-6600
             Project: CXF
          Issue Type: Bug
          Components: STS
    Affects Versions: 3.0.4
            Reporter: Andreas Vallen


After our application has been running for a few days it starts experiencing 
repeated NullPointerExceptions on each invocation of a CXF web service client 
proxy when it contacts the STS, see stacktraces below.

The fediz-based system is set-up similarly to the wsclientWebapp sample from 
the fediz distribution: with WS-Federation SSO and delegated Web Service access 
via an issued-token WS-Trust policy. 

The system is based on fediz 1.2.0, CXF 3.0.4, Windows Server 2008 R2, java 
8u51, tomcat 8.0.23.

The following NPE repeatedly shows on each web service invocation once this 
condition starts. There is no discernible cause of this. A tomcat restart fixes 
it.

{code}
2015-09-18 14:09:30,384Z WARN  [http-apr-443-exec-60] - 
o.a.cxf.phase.PhaseInterceptorChain      : Interceptor for 
{http://service.ecs.net/}ECSServiceService#{http://service.ecs. net/}GetHome 
has thrown exception, unwinding now

java.lang.NullPointerException: null
        at com.sun.xml.bind.unmarshaller.DOMScanner.visit(DOMScanner.java:274)
        at com.sun.xml.bind.unmarshaller.DOMScanner.visit(DOMScanner.java:250)
        at com.sun.xml.bind.unmarshaller.DOMScanner.visit(DOMScanner.java:281)
        at com.sun.xml.bind.unmarshaller.DOMScanner.visit(DOMScanner.java:250)
        at com.sun.xml.bind.unmarshaller.DOMScanner.scan(DOMScanner.java:127)
        at 
com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:369)
        at 
com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:348)
        at 
org.apache.cxf.ws.addressing.VersionTransformer.parseEndpointReference(VersionTransformer.java:439)
        at 
org.apache.cxf.ws.security.trust.STSUtils.getClient(STSUtils.java:118)
        at 
org.apache.cxf.ws.security.policy.interceptors.IssuedTokenInterceptorProvider$IssuedTokenOutInterceptor.issueToken(IssuedTokenInterceptorProvider.java:485)
        at 
org.apache.cxf.ws.security.policy.interceptors.IssuedTokenInterceptorProvider$IssuedTokenOutInterceptor.handleMessage(IssuedTokenInterceptorProvider.java:162)
        at 
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:307)
        at org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:516)
        at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:425)
        at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:326)
        at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:279)
        at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:96)
        at 
org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:138)
        at com.sun.proxy.$Proxy364.getHome(Unknown Source)
        at net.ecs.unifyweb.HomeResource.getWelcome(HomeResource.java:129)
        at sun.reflect.GeneratedMethodAccessor401.invoke(Unknown Source)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:497)
        at 
org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:181)
        at 
org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:97)
        at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:200)
        at net.ecs.unifyweb.AntiXSSInvoker.invoke(AntiXSSInvoker.java:58)
        at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:99)
        at 
org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:59)
        at 
org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:96)
        at 
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:307)
        at 
org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)
        at 
org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:251)
        at 
org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:234)
        at 
org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:208)
        at 
org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:160)
        at 
org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:171)
        at 
org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:293)
        at 
org.apache.cxf.transport.servlet.AbstractHTTPServlet.doGet(AbstractHTTPServlet.java:217)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:622)
{code}







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

Reply via email to