[JIRA] Closed: (SIDP-508) NullPointerException in AuthenticationEngine

Chad La Joie (JIRA) noreply at shibboleth.net
Mon Oct 10 19:58:25 BST 2011


     [ https://issues.shibboleth.net/jira/browse/SIDP-508?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Chad La Joie closed SIDP-508.
-----------------------------

    Resolution: Fixed

I don't have a real good way to test this, however I did add a null check on the only thing that, as far as I can tell, could ever be null.  So hopefully that addresses this.

Done in rev 3076

> NullPointerException in AuthenticationEngine
> --------------------------------------------
>
>                 Key: SIDP-508
>                 URL: https://issues.shibboleth.net/jira/browse/SIDP-508
>             Project: Shibboleth IdP 2 - Java
>          Issue Type: Bug
>          Components: Authentication
>    Affects Versions: 2.3.1, 2.3.2, 2.3.3
>         Environment: Solaris
> JDK1.6.0_24
>            Reporter: beall at usc.edu
>            Assignee: Chad La Joie
>            Priority: Minor
>             Fix For: 2.3.4
>
>
> When opening large numbers of tabs containing SP sites which attempt to login with PreviousSession handler, sometimes the flow is corrupted and strange errors are produced.  A number of these we already discussed on the user list, but one of them is an bug.  This is guaranteed to show up when opening many tabs at once.  Rarely has it been seen so far in the production logs, but a few instances have appeared.  Here is a stack trace:
> Aug 8, 2011 7:23:00 AM org.apache.catalina.core.ApplicationDispatcher invoke
> SEVERE: Servlet.service() for servlet AuthenticationEngine threw exception
> java.lang.NullPointerException
>         at edu.internet2.middleware.shibboleth.idp.authn.AuthenticationEngine.returnToProfileHandler(AuthenticationEngine.java:168)
>         at edu.internet2.middleware.shibboleth.idp.authn.AuthenticationEngine.completeAuthentication(AuthenticationEngine.java:560)
>         at edu.internet2.middleware.shibboleth.idp.authn.AuthenticationEngine.service(AuthenticationEngine.java:218)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>         at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630)
>         at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
>         at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
>         at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
>         at edu.internet2.middleware.shibboleth.idp.authn.AuthenticationEngine.forwardRequest(AuthenticationEngine.java:189)
>         at edu.internet2.middleware.shibboleth.idp.authn.AuthenticationEngine.returnToAuthenticationEngine(AuthenticationEngine.java:150)
>         at edu.internet2.middleware.shibboleth.idp.authn.provider.PreviousSessionLoginHandler.login(PreviousSessionLoginHandler.java:116)
>         at edu.internet2.middleware.shibboleth.idp.authn.AuthenticationEngine.startUserAuthentication(AuthenticationEngine.java:258)
>         at edu.internet2.middleware.shibboleth.idp.authn.AuthenticationEngine.service(AuthenticationEngine.java:216)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>         at edu.internet2.middleware.shibboleth.idp.util.NoCacheFilter.doFilter(NoCacheFilter.java:50)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>         at edu.internet2.middleware.shibboleth.idp.session.IdPSessionFilter.doFilter(IdPSessionFilter.java:81)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>         at edu.internet2.middleware.shibboleth.common.log.SLF4JMDCCleanupFilter.doFilter(SLF4JMDCCleanupFilter.java:52)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)
>         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
>         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
>         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
>         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>         at org.terracotta.modules.tomcat.tomcat_5_5.SessionValve55.invoke(SessionValve55.java:87)
>         at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
>         at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190)
>         at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:283)
>         at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:767)
>         at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:697)
>         at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:889)
>         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690)
>         at java.lang.Thread.run(Thread.java:662)

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


More information about the commits mailing list