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

Dan Allen (JIRA) jira-events at lists.jboss.org
Wed Mar 23 03:20:58 EDT 2011


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

Dan Allen commented on SEAMSECURITY-42:
---------------------------------------

The problem is that Messages isn't resolving at runtime in this scenario. We are trying to determine the condition that is causing this bean to become invisible.

Btw, injecting Messages into the field will not cause a deployment error in this case. That's because seam-security.jar comes after seam-international.jar in alphabetical order, so this escapes the alpha-bravo visibility issue in GlassFish.

What we are dealing with is a failure to resolve the bean at runtime. Hence the null pointer exceptions (regardless of field or method argument injection).

My guess is this stems from invoking the identity component from EL. We are getting QE to investigate.

> 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