Team Member Generates Error "HTTP 500 Internal Server Error" Or Displays A White Screen When Attempting Login And Writes "java.lang.NullPointerException at com.primavera.bo.datacaches.AbstractUserPrivsCache.getUserLicenses" In p6tmweb.log

(Doc ID 2303586.1)

Last updated on SEPTEMBER 05, 2017

Applies to:

Primavera P6 Enterprise Project Portfolio Management - Version 16.2.9.0 and later
Information in this document applies to any platform.

Symptoms

When attempting to login to Team Member (configured for SSO), either a white page or an HTTP 500 Internal Server error displays for the /p6tmweb or /p6tmweb/login URI and the following error is written to the p6tmweb.log file (when the logging level = ALL):

ERROR
-----------------------
TIMESTAMP org.springframework.web.servlet.FrameworkServlet processRequest
FINE: Could not complete request
java.lang.NullPointerException
at com.primavera.bo.datacaches.AbstractUserPrivsCache.getUserLicenses(AbstractUserPrivsCache.java:312)
at com.primavera.bo.datacaches.AbstractUserPrivsCache.isTeamUser(AbstractUserPrivsCache.java:540)
at com.primavera.bo.datacaches.AbstractUserPrivsCache.a(AbstractUserPrivsCache.java:1219)
at com.primavera.bo.datacaches.AbstractUserPrivsCache.getUserProfile(AbstractUserPrivsCache.java:100)
at com.primavera.bo.datacaches.AbstractUserPrivsCache.isSuperUser(AbstractUserPrivsCache.java:520)
at com.primavera.bo.remotable.PrivilegeHdlr.isUserSuperUser(PrivilegeHdlr.java:267)
at com.primavera.bo.remotable.qproxy.PrivilegeHdlr.isUserSuperUser(PrivilegeHdlr.java:289)
at com.primavera.bo.DBPrivilegeHdlr.isUserSuperUser(DBPrivilegeHdlr.java:99)
at com.primavera.bo.base.CalculateEngineImpl.b(CalculateEngineImpl.java:2599)
at com.primavera.bo.base.CalculateEngineImpl.a(CalculateEngineImpl.java:5227)
at com.primavera.bo.base.CalculateEngineImpl.getObjects(CalculateEngineImpl.java:4293)
at com.primavera.bo.base.CalculateEngineImpl.a(CalculateEngineImpl.java:4039)
at com.primavera.bo.base.CalculateEngineImpl.getObjects(CalculateEngineImpl.java:3996)
at com.primavera.bo.base.server.ServerDAOImpl.loadPrmRowSet(ServerDAOImpl.java:152)
at com.primavera.bo.remotable.ReqMgr.getObjects(ReqMgr.java:1273)
at com.primavera.bo.remotable.qproxy.ReqMgr.getObjects(ReqMgr.java:802)
at com.primavera.bo.DBReqMgr.getObjects(DBReqMgr.java:192)
at com.primavera.integration.server.mediator.BusinessObjectMediator.load(BusinessObjectMediator.java:131)
at com.primavera.integration.server.mediator.L.load(ResourceMediator.java:61)
at com.primavera.integration.server.ServerFacadeBOMgr.load(ServerFacadeBOMgr.java:260)
at com.primavera.integration.server.ServerFacade.load(ServerFacade.java:21)
at com.primavera.integration.client.LocalSession.a(LocalSession.java:416)
at com.primavera.integration.client.Session.b(Session.java:1244)
at com.primavera.integration.client.b.a(BOBase.java:135)
at com.primavera.integration.client.BOHelperBase.a(BOHelperBase.java:64)
at com.primavera.integration.client.bo.helper.ResourceHelper.load(ResourceHelper.java:532)
at com.oracle.pgbu.teammember.services.common.BOLoader.load(BOLoader.java:36)
at com.oracle.pgbu.teammember.services.tm.TeamMemberServiceImpl.loadTeamMember(TeamMemberServiceImpl.java:77)
at com.primavera.tm.authentication.P6AuthenticationConnector.authenticateUser(P6AuthenticationConnector.java:89)
at com.primavera.tm.TeamMemberOrchestrator.authenticateUser(TeamMemberOrchestrator.java:196)
at com.oracle.pgbu.servlets.AuthController.login(AuthController.java:127)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.springframework.web.bind.annotation.support.HandlerMethodInvoker.invokeHandlerMethod(HandlerMethodInvoker.java:178)
at org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.invokeHandlerMethod(AnnotationMethodHandlerAdapter.java:444)
at org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.handle(AnnotationMethodHandlerAdapter.java:432)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:959)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:893)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:968)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:859)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:844)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:844)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:280)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:254)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:136)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:346)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:243)
at weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:587)
at weblogic.servlet.internal.RequestDispatcherImpl.forward(RequestDispatcherImpl.java:273)
at com.oracle.pgbu.filters.AuthFilter.doFilter(AuthFilter.java:89)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:262)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:79)
at weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:588)
at weblogic.servlet.internal.RequestDispatcherImpl.forward(RequestDispatcherImpl.java:273)
at com.oracle.pgbu.servlets.WelcomeServlet.doGet(WelcomeServlet.java:14)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:844)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:280)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:254)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:136)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:346)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:25)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:79)
at com.oracle.pgbu.filters.TMXSSFilter.doFilter(TMXSSFilter.java:91)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:79)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:121)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:79)
at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:79)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3436)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3402)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
at weblogic.servlet.provider.WlsSubjectHandle.run(WlsSubjectHandle.java:57)
at weblogic.servlet.internal.WebAppServletContext.doSecuredExecute(WebAppServletContext.java:2285)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2201)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2179)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1572)
at weblogic.servlet.provider.ContainerSupportProviderImpl$WlsRequestExecutor.run(ContainerSupportProviderImpl.java:255)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:311)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:263)

Note: The issue does not occur for all users.


STEPS
-----------------------
The issue can be reproduced at will with the following steps:
1. Open a browser
2. Connect to the Team Member web application. Note, when configured for SSO, you will be prompted for SSO authentication.
3. Note the error which occurs when attempting to render the Team Member page.

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms