[seam-issues] [JBoss JIRA] Commented: (SEAMSECURITY-42) NPE when attempting to login

Shane Bryzak (JIRA) jira-events at lists.jboss.org
Tue Mar 22 09:30:45 EDT 2011


    [ https://issues.jboss.org/browse/SEAMSECURITY-42?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12589643#comment-12589643 ] 

Shane Bryzak commented on SEAMSECURITY-42:
------------------------------------------

The compiler error should be fixed now - I messed up the dependencies for the combined security jar.  As for the other exception, I can't explain it.  Here's the code in question:

         activeAuthenticator = lookupAuthenticator();
         
         if (activeAuthenticator == null)
         {
            authenticating = false;
            throw new AuthenticationException("An Authenticator could not be located");
         }
         
         activeAuthenticator.authenticate();
         
         switch (activeAuthenticator.getStatus())

According to your stack trace the NPE is occurring on line 312, which is the switch() statement above.  If the activeAuthenticator variable is null, it shouldn't even reach this point due to the previous null check (it should throw an AuthenticationException).  The good news is that it's getting further than it did previously.  Would you be able to set a breakpoint in SimpleAuthenticator.authenticate() to see if the authenticator is being invoked?

> NPE when attempting to login
> ----------------------------
>
>                 Key: SEAMSECURITY-42
>                 URL: https://issues.jboss.org/browse/SEAMSECURITY-42
>             Project: Seam Security
>          Issue Type: Bug
>    Affects Versions: 3.0.0.CR2
>         Environment: OS X, JDK 1.6.0_24 64-bit, Glassfish 3.1
>            Reporter: Aaron Siri
>            Assignee: Shane Bryzak
>             Fix For: 3.0.0.Final
>
>         Attachments: security-simple.war
>
>
> When I attempt to login (a very basic login form and authenticator) using #{identity.login}, after setting credentials, I get the following exceptions:
> SEVERE: Login failed
> java.lang.RuntimeException: java.lang.NullPointerException
> 	at org.jboss.seam.security.IdentityImpl.authenticate(IdentityImpl.java:324)
> 	at org.jboss.seam.security.IdentityImpl.login(IdentityImpl.java:229)
> 	at org.jboss.seam.security.org$jboss$weld$bean-WEB-INF$lib$seam-security-impl-3$0$0$CR2-ManagedBean-class_org$jboss$seam$security$IdentityImpl_$$_WeldClientProxy.login(org$jboss$weld$bean-WEB-INF$lib$seam-security-impl-3$0$0$CR2-ManagedBean-class_org$jboss$seam$security$IdentityImpl_$$_WeldClientProxy.java)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at com.sun.el.parser.AstValue.invoke(AstValue.java:234)
> 	at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:297)
> 	at org.jboss.weld.util.el.ForwardingMethodExpression.invoke(ForwardingMethodExpression.java:43)
> 	at org.jboss.weld.el.WeldMethodExpression.invoke(WeldMethodExpression.java:56)
> 	at com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:105)
> 	at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:88)
> 	at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102)
> 	at javax.faces.component.UICommand.broadcast(UICommand.java:315)
> 	at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:794)
> 	at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1259)
> 	at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)
> 	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
> 	at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
> 	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:409)
> 	at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1534)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:343)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:215)
> 	at org.primefaces.webapp.filter.FileUploadFilter.doFilter(FileUploadFilter.java:79)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:215)
> 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:279)
> 	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
> 	at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:655)
> 	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:595)
> 	at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:98)
> 	at com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:91)
> 	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:162)
> 	at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:326)
> 	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:227)
> 	at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:170)
> 	at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:822)
> 	at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:719)
> 	at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1013)
> 	at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:225)
> 	at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
> 	at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
> 	at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
> 	at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
> 	at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
> 	at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
> 	at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
> 	at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
> 	at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
> 	at java.lang.Thread.run(Thread.java:680)
> Caused by: java.lang.NullPointerException
> 	at org.picketlink.idm.impl.api.session.IdentitySessionImpl.<init>(IdentitySessionImpl.java:138)
> 	at org.picketlink.idm.impl.api.IdentitySessionFactoryImpl.createIdentitySession(IdentitySessionFactoryImpl.java:114)
> 	at org.jboss.seam.security.management.picketlink.IdentitySessionProducer.createIdentitySession(IdentitySessionProducer.java:136)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.jboss.weld.util.reflection.SecureReflections$13.work(SecureReflections.java:305)
> 	at org.jboss.weld.util.reflection.SecureReflectionAccess.run(SecureReflectionAccess.java:54)
> 	at org.jboss.weld.util.reflection.SecureReflectionAccess.runAsInvocation(SecureReflectionAccess.java:163)
> 	at org.jboss.weld.util.reflection.SecureReflections.invoke(SecureReflections.java:299)
> 	at org.jboss.weld.introspector.jlr.WeldMethodImpl.invokeOnInstance(WeldMethodImpl.java:188)
> 	at org.jboss.weld.injection.MethodInjectionPoint.invokeOnInstance(MethodInjectionPoint.java:169)
> 	at org.jboss.weld.bean.ProducerMethod$1.produce(ProducerMethod.java:149)
> 	at org.jboss.weld.bean.AbstractProducerBean.create(AbstractProducerBean.java:361)
> 	at org.jboss.weld.context.AbstractContext.get(AbstractContext.java:121)
> 	at org.jboss.weld.bean.proxy.ContextBeanInstance.getInstance(ContextBeanInstance.java:99)
> 	at org.jboss.weld.bean.proxy.ProxyMethodHandler.invoke(ProxyMethodHandler.java:124)
> 	at org.jboss.weld.proxies.org$jboss$weld$beanProducerMethod-org$jboss$seam$security$management$picketlink$IdentitySessionProducermethod_createIdentitySession()_$$_WeldClientProxy.getAttributesManager(org$jboss$weld$beanProducerMethod-org$jboss$seam$security$management$picketlink$IdentitySessionProducermethod_createIdentitySession()_$$_WeldClientProxy.java)
> 	at org.jboss.seam.security.management.IdmAuthenticator.authenticate(IdmAuthenticator.java:45)
> 	at org.jboss.seam.security.management.org$jboss$weld$bean-WEB-INF$lib$seam-security-impl-3$0$0$CR2-ManagedBean-class_org$jboss$seam$security$management$IdmAuthenticator_$$_WeldClientProxy.authenticate(org$jboss$weld$bean-WEB-INF$lib$seam-security-impl-3$0$0$CR2-ManagedBean-class_org$jboss$seam$security$management$IdmAuthenticator_$$_WeldClientProxy.java)
> 	at org.jboss.seam.security.IdentityImpl.authenticate(IdentityImpl.java:305)
> 	... 50 more
> My webapp's lib directory contains:
> batik-awt-util-1.6-1.jar
> batik-ext-1.6-1.jar
> batik-gui-util-1.6-1.jar
> batik-util-1.6-1.jar
> bcprov-jdk16-1.45.jar
> commons-beanutils-1.7.0.jar
> commons-codec-1.3.jar
> commons-collections-3.2.1.jar
> commons-digester-1.6.jar
> commons-el-1.0.jar
> commons-fileupload-1.2.2.jar
> commons-io-1.4.jar
> commons-lang-2.4.jar
> commons-logging-1.1.1.jar
> commons-validator-1.3.1.jar
> imgscalr-lib-3.0.jar
> joda-time-1.5.2.jar
> jstl-1.1.0.jar
> oro-2.0.8.jar
> picketlink-idm-api-1.5.0.Alpha02.jar
> picketlink-idm-common-1.5.0.Alpha02.jar
> picketlink-idm-core-1.5.0.Alpha02.jar
> picketlink-idm-spi-1.5.0.Alpha02.jar
> primefaces-3.0-prime-1.jar
> seam-international-3.0.0.CR1.jar
> seam-persistence-3.0.0.CR1.jar
> seam-security-api-3.0.0.CR2.jar
> seam-security-impl-3.0.0.CR2.jar
> seam-solder-3.0.0.CR1.jar
> slf4j-api-1.5.8.jar
> slf4j-jdk14-1.5.8.jar
> tomahawk-1.1.10.jar
> xml-apis-1.0.b2.jar
> xmlParserAPIs-2.0.2.jar

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira


More information about the seam-issues mailing list