Bug 1064331

Summary: NPE in JBWSTokenIssuingLoginModule
Product: [JBoss] JBoss Enterprise Application Platform 6 Reporter: Hynek Mlnarik <hmlnarik>
Component: PicketLinkAssignee: Peter Skopek <pskopek>
Status: CLOSED CURRENTRELEASE QA Contact: Hynek Mlnarik <hmlnarik>
Severity: high Docs Contact: Russell Dickenson <rdickens>
Priority: unspecified    
Version: 6.3.0CC: asaldhan, jcacek, jdoyle, nziakova, pslavice, smumford
Target Milestone: DR6   
Target Release: EAP 6.3.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-06-28 15:27:35 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1051640, 1069126, 1176541    

Description Hynek Mlnarik 2014-02-12 12:43:47 UTC
NPE in STSIssuingLoginModule when using JBWSTokenIssuingLoginModule in EAP 6.3.0.DR0. Method org.picketlink.identity.federation.core.wstrust.STSClientFactory.create(int, STSClientCreationCallBack) called from org.picketlink.trust.jbossws.jaas.JBWSTokenIssuingLoginModule.createWSTrustClient(STSClientConfig) returns null.

The bug has likely same cause as https://issues.jboss.org/browse/PLINK2-127

Stacktrace follows:
11:47:38,666 DEBUG [org.jboss.security] (http-localhost/127.0.0.1:8080-3) PBOX000206: Login failure: javax.security.auth.login.LoginException: java.lang.NullPointerException
        at org.picketlink.identity.federation.core.wstrust.auth.STSIssuingLoginModule.invokeSTS(STSIssuingLoginModule.java:85)
        at org.picketlink.identity.federation.core.wstrust.auth.AbstractSTSLoginModule.login(AbstractSTSLoginModule.java:421)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at javax.security.auth.login.LoginContext.invoke(LoginContext.java:775)
        at javax.security.auth.login.LoginContext.access$000(LoginContext.java:205)
        at javax.security.auth.login.LoginContext$5.run(LoginContext.java:697)
        at javax.security.auth.login.LoginContext$5.run(LoginContext.java:695)
        at java.security.AccessController.doPrivileged(Native Method)
        at javax.security.auth.login.LoginContext.invokePriv(LoginContext.java:694)
        at javax.security.auth.login.LoginContext.login(LoginContext.java:602)
        at org.jboss.security.authentication.JBossCachedAuthenticationManager.defaultLogin(JBossCachedAuthenticationManager.java:408)
        at org.jboss.security.authentication.JBossCachedAuthenticationManager.proceedWithJaasLogin(JBossCachedAuthenticationManager.java:345)
        at org.jboss.security.authentication.JBossCachedAuthenticationManager.authenticate(JBossCachedAuthenticationManager.java:333)
        at org.jboss.security.authentication.JBossCachedAuthenticationManager.isValid(JBossCachedAuthenticationManager.java:146)
        at org.jboss.as.web.security.JBossWebRealm.authenticate(JBossWebRealm.java:216)
        at org.apache.catalina.authenticator.BasicAuthenticator.authenticate(BasicAuthenticator.java:178)
        at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:465)
        at org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:169)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:145)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:97)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:102)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:336)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:653)
        at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:920)
        at java.lang.Thread.run(Thread.java:744)

        at javax.security.auth.login.LoginContext.invoke(LoginContext.java:877) [rt.jar:1.7.0_51]
        at javax.security.auth.login.LoginContext.access$000(LoginContext.java:205) [rt.jar:1.7.0_51]
        at javax.security.auth.login.LoginContext$5.run(LoginContext.java:697) [rt.jar:1.7.0_51]
        at javax.security.auth.login.LoginContext$5.run(LoginContext.java:695) [rt.jar:1.7.0_51]
        at java.security.AccessController.doPrivileged(Native Method) [rt.jar:1.7.0_51]
        at javax.security.auth.login.LoginContext.invokePriv(LoginContext.java:694) [rt.jar:1.7.0_51]
        at javax.security.auth.login.LoginContext.login(LoginContext.java:602) [rt.jar:1.7.0_51]
        at org.jboss.security.authentication.JBossCachedAuthenticationManager.defaultLogin(JBossCachedAuthenticationManager.java:408) [picketbox-infinispan-4.0.19.SP3-redhat-1.jar:4.0.19.SP3-redhat-1]
        at org.jboss.security.authentication.JBossCachedAuthenticationManager.proceedWithJaasLogin(JBossCachedAuthenticationManager.java:345) [picketbox-infinispan-4.0.19.SP3-redhat-1.jar:4.0.19.SP3-redhat-1]
        at org.jboss.security.authentication.JBossCachedAuthenticationManager.authenticate(JBossCachedAuthenticationManager.java:333) [picketbox-infinispan-4.0.19.SP3-redhat-1.jar:4.0.19.SP3-redhat-1]
        at org.jboss.security.authentication.JBossCachedAuthenticationManager.isValid(JBossCachedAuthenticationManager.java:146) [picketbox-infinispan-4.0.19.SP3-redhat-1.jar:4.0.19.SP3-redhat-1]
        at org.jboss.as.web.security.JBossWebRealm.authenticate(JBossWebRealm.java:216) [jboss-as-web-7.4.0.Final-redhat-0.jar:7.4.0.Final-redhat-0]
        at org.apache.catalina.authenticator.BasicAuthenticator.authenticate(BasicAuthenticator.java:178) [jbossweb-7.3.0.Final-redhat-1.jar:7.3.0.Final-redhat-1]
        at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:465) [jbossweb-7.3.0.Final-redhat-1.jar:7.3.0.Final-redhat-1]
        at org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:169) [jboss-as-web-7.4.0.Final-redhat-0.jar:7.4.0.Final-redhat-0]
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:145) [jbossweb-7.3.0.Final-redhat-1.jar:7.3.0.Final-redhat-1]
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:97) [jbossweb-7.3.0.Final-redhat-1.jar:7.3.0.Final-redhat-1]
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:102) [jbossweb-7.3.0.Final-redhat-1.jar:7.3.0.Final-redhat-1]
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:336) [jbossweb-7.3.0.Final-redhat-1.jar:7.3.0.Final-redhat-1]
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856) [jbossweb-7.3.0.Final-redhat-1.jar:7.3.0.Final-redhat-1]
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:653) [jbossweb-7.3.0.Final-redhat-1.jar:7.3.0.Final-redhat-1]
        at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:920) [jbossweb-7.3.0.Final-redhat-1.jar:7.3.0.Final-redhat-1]
        at java.lang.Thread.run(Thread.java:744) [rt.jar:1.7.0_51]

Comment 2 Peter Skopek 2014-04-03 19:41:51 UTC
the fix is part of PicketLink 2.5.3.SP2

Comment 3 Hynek Mlnarik 2014-04-16 10:51:07 UTC
Verified for EAP 6.3.0.ER1

Comment 4 Scott Mumford 2014-05-14 00:54:12 UTC
Marking for exclusion from 6.3.0 Beta release notes as both 'affects' and 'fix' versions are listed as 6.3.0, suggesting this was not a customer-facing issue.