Hi Eric. Thanks for the tip. swapping in "::" for "." and swapping it out did resolve the truncated group issue for us.
That helped us rule it out and got us to the real issue. We have at least one user, and maybe up to 100 users, in our system who are members of an abnormally large number of groups. The user we found is a member in 1100+ groups. Are there users in your system with memberships on this scale? I would think that users of the ldap or smart ldap group stores may run into something similar. Maybe there is something in the core groups service that has an issue dealing with large numbers of groups. We would like to further debug this but are looking for yet more clues about the groups service system in general. We see in our example we can retrieve the initial list of groups from the group service (grouper in our case) for the user above. There about 1100+ results. After that, the portal again queries the group service for each of these 1100+ groups. Its during this second query that the portal receives a null pointer exception. Then the portal breaks and everyone who tries to access the node after that fails with the same NPE trace as our 1100+ user. Apologies for the brain dump here but were not exactly sure what to try next and want to here if anyone else has run into an issue like this? Should I post this to the user list as well? Thanks again for your help. Bill Brown Web Application Developer, Web Services IT Services, The University of Chicago ________________________________________ From: bounce-26662712-50353...@lists.wisc.edu [bounce-26662712-50353...@lists.wisc.edu] on behalf of Eric Dalquist [eric.dalqu...@doit.wisc.edu] Sent: Wednesday, January 16, 2013 10:09 AM To: uportal-dev@lists.ja-sig.org Subject: Re: [uportal-dev] Issue with user layout not loading So changing the key seperator in theory is possible but you'd probably have to do it on a clean database pre-import for it to work. What would be better would be to modify the grouper group service to replace '.' with another character immediately after it comes back from the grouper API, maybe a ' '? That should fix the parsing error in GAP. -Eric On 1/12/13 10:27 PM, Bill Brown wrote: > Thanks for the tip Eric. > > Looks like the keys for some of our grouper groups are being truncated when > being created as a CompositeEntityIdentifier. We were using these keys to > cache results from the grouper service to reduce the number of repeated calls > to grouper. For example a grouper group key that looks like > > uc:Reference:studentinfo:citizenshipstatus:U.S. Citizen > > becomes this composite group > > "grouper. Citizen" > > instead of > > "grouper.uc:Reference:studentinfo:citizenshipstatus:U.S. Citizen" > > The null pointers were popping in because the shortened keys don't exist when > querying the cache. > > So I tried changing the nodeSeparator character from "." to "::" in > compositeGroupService.xml but got a bunch of these errors below and am not > sure how to proceed. Is it possible to change the composite key seperator > character without getting the errors or maybe it should stay as the default > and work around something in the CompositieEntityIdentifier? > > WARN 2013-01-12 22:57:49,519 [JCLLoggerAdapter.warn(ln:359)] - No portlet > window found for: channel > > ERROR 2013-01-12 22:57:49,522 [JCLLoggerAdapter.error(ln:534)] - Faild to > create IPortalUrlBuilder for fname='feedback-portlet', layoutId='', type=''. > # will be returned instead. > > java.lang.IllegalArgumentException: Could not find PortletWindow for > fname=feedback-portlet to create IPortalUrlBuilder > at > org.jasig.portal.url.PortalUrlProviderImpl.getPortalUrlBuilderByPortletFName(PortalUrlProviderImpl.java:159) > at > org.jasig.portal.url.xml.XsltPortalUrlProvider.getPortalUrlBuilder(XsltPortalUrlProvider.java:95) > at universality.portalUrl() > at universality.header$dot$block() > at universality.template$dot$4() > at universality.applyTemplates() > at universality.template$dot$3() > at universality.applyTemplates() > at universality.applyTemplates() > at universality.transform() > at > com.sun.org.apache.xalan.internal.xsltc.runtime.AbstractTranslet.transform(AbstractTranslet.java:602) > at > com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:709) > at > com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:313) > at > org.jasig.portal.rendering.xslt.XSLTComponent.getEventReader(XSLTComponent.java:151) > at > org.jasig.portal.rendering.LoggingStAXComponent.getEventReader(LoggingStAXComponent.java:79) > at > org.jasig.portal.rendering.StAXSerializingComponent.getEventReader(StAXSerializingComponent.java:94) > at > org.jasig.portal.rendering.cache.CachingPipelineComponent.getEventReader(CachingPipelineComponent.java:100) > at > org.jasig.portal.rendering.PortletRenderingInitiationCharacterComponent.getEventReader(PortletRenderingInitiationCharacterComponent.java:73) > at > org.jasig.portal.rendering.PortletRenderingIncorporationComponent.getEventReader(PortletRenderingIncorporationComponent.java:72) > at > org.jasig.portal.rendering.DynamicRenderingPipeline.renderState(DynamicRenderingPipeline.java:85) > at > org.jasig.portal.rendering.PortalController.renderRequest(PortalController.java:90) > 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.springframework.web.bind.annotation.support.HandlerMethodInvoker.invokeHandlerMethod(HandlerMethodInvoker.java:176) > at > org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.invokeHandlerMethod(AnnotationMethodHandlerAdapter.java:436) > at > org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.handle(AnnotationMethodHandlerAdapter.java:424) > at > org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:923) > at > org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852) > at > org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882) > at > org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:778) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:617) > 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.jasig.portal.utils.web.CreatePortletCookieFilter.doFilterInternal(CreatePortletCookieFilter.java:60) > at > org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) > at > org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346) > at > org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > at > org.jasig.portal.url.UrlCanonicalizingFilter.doFilterInternal(UrlCanonicalizingFilter.java:118) > at > org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) > at > org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346) > at > org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > at > org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:70) > at > org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346) > at > org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > at > org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88) > at > org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:311) > at > org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:116) > at > org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83) > at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) > at > org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113) > at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) > at > org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:101) > at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) > at > org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:113) > at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) > at > org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:54) > at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) > at > org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:45) > at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) > at > org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilter(BasicAuthenticationFilter.java:150) > at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) > at > org.springframework.security.web.authentication.ui.DefaultLoginPageGeneratingFilter.doFilter(DefaultLoginPageGeneratingFilter.java:91) > at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) > at > org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:182) > at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) > at > org.springframework.security.web.authentication.preauth.AbstractPreAuthenticatedProcessingFilter.doFilter(AbstractPreAuthenticatedProcessingFilter.java:88) > at > org.jasig.portal.spring.security.preauth.PortalPreAuthenticatedProcessingFilter.doFilter(PortalPreAuthenticatedProcessingFilter.java:161) > at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) > at > org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:105) > at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) > at > org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87) > at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) > at > org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:173) > at > org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346) > at > org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > at > org.springframework.orm.jpa.support.OpenEntityManagerInViewFilter.doFilterInternal(OpenEntityManagerInViewFilter.java:147) > at > org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) > at > org.jasig.portal.utils.web.ExceptionLoggingFilter.doFilter(ExceptionLoggingFilter.java:40) > 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:233) > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) > at > com.googlecode.psiprobe.Tomcat60AgentValve.invoke(Tomcat60AgentValve.java:30) > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) > at > org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:567) > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) > at > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293) > at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190) > at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:291) > at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:769) > at > org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:698) > at > org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:891) > at > org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690) > at java.lang.Thread.run(Thread.java:662) > > Thanks again for your help > > Bill Brown > ________________________________________ > From: bounce-26628435-50353...@lists.wisc.edu > [bounce-26628435-50353...@lists.wisc.edu] on behalf of Eric Dalquist > [eric.dalqu...@doit.wisc.edu] > Sent: Saturday, January 12, 2013 1:43 PM > To: uportal-dev@lists.ja-sig.org > Subject: Re: [uportal-dev] Issue with user layout not loading > > Looks like IGroupMember.getContainingGroups() returned an Iterator that > contains 1 or more null elements. This is not OK in the groups API. > Considering the log message about Grouper I'd take a look at that group > store impl to see if it can exhibit this behavior. > > -Eric > > > On 1/12/13 11:12 AM, Bill Brown wrote: >> Hello uPortal Devs. >> >> We've been having an increasing issue with our portal instances (4.0.5 6 >> node cluster) failing to load the layout for the guest user and also for >> current users if they are logged in. At request from Eric, I added some >> debug statements to DistributedLayoutManager try to uncover what might be >> happening. Here is an additional trace that was being covered up previously. >> Can you make out what might be null here or what we could try on our end to >> stop this from happening? >> >> INFO 2013-01-12 12:30:41,732 [GrouperEntityGroupStore.find(ln:141)] - >> Searching Grouper for a direct match for key: Citizen >> >> ERROR 2013-01-12 12:30:41,802 >> [DistributedLayoutManager.getDistributedUserLayout(ln:282)] - error getting >> distributed user layout for guest: >> >> java.lang.NullPointerException >> at >> org.jasig.portal.groups.GroupMemberImpl.primGetAllContainingGroups(GroupMemberImpl.java:344) >> at >> org.jasig.portal.groups.GroupMemberImpl.primGetAllContainingGroups(GroupMemberImpl.java:351) >> at >> org.jasig.portal.groups.GroupMemberImpl.getAllContainingGroups(GroupMemberImpl.java:139) >> at >> org.jasig.portal.security.provider.AuthorizationImpl.primGetPermissionsForPrincipal(AuthorizationImpl.java:914) >> at >> org.jasig.portal.security.provider.AuthorizationImpl.getPermissionsForPrincipal(AuthorizationImpl.java:655) >> at >> org.jasig.portal.security.provider.AnyUnblockedGrantPermissionPolicy.doesPrincipalHavePermission(AnyUnblockedGrantPermissionPolicy.java:100) >> at >> org.jasig.portal.security.provider.AnyUnblockedGrantPermissionPolicy.doesPrincipalHavePermission(AnyUnblockedGrantPermissionPolicy.java:91) >> at >> org.jasig.portal.security.provider.AuthorizationImpl.doesPrincipalHavePermission(AuthorizationImpl.java:455) >> at >> org.jasig.portal.security.provider.AuthorizationImpl.doesPrincipalHavePermission(AuthorizationImpl.java:427) >> at >> org.jasig.portal.security.provider.AuthorizationImpl.canPrincipalSubscribe(AuthorizationImpl.java:401) >> at >> org.jasig.portal.security.provider.AuthorizationImpl.canPrincipalRender(AuthorizationImpl.java:357) >> at >> org.jasig.portal.security.provider.AuthorizationPrincipalImpl.canRender(AuthorizationPrincipalImpl.java:84) >> at >> org.jasig.portal.layout.dlm.ILFBuilder.mergeAllowed(ILFBuilder.java:188) >> at >> org.jasig.portal.layout.dlm.ILFBuilder.mergeChildren(ILFBuilder.java:152) >> at >> org.jasig.portal.layout.dlm.ILFBuilder.mergeChildren(ILFBuilder.java:159) >> at >> org.jasig.portal.layout.dlm.ILFBuilder.mergeChildren(ILFBuilder.java:159) >> at >> org.jasig.portal.layout.dlm.ILFBuilder.mergeFragment(ILFBuilder.java:114) >> at >> org.jasig.portal.layout.dlm.ILFBuilder.constructILF(ILFBuilder.java:94) >> at >> org.jasig.portal.layout.dlm.RDBMDistributedLayoutStore.getCompositeLayout(RDBMDistributedLayoutStore.java:1376) >> at >> org.jasig.portal.layout.dlm.RDBMDistributedLayoutStore._getUserLayout(RDBMDistributedLayoutStore.java:1204) >> at >> org.jasig.portal.layout.dlm.RDBMDistributedLayoutStore.getUserLayout(RDBMDistributedLayoutStore.java:379) >> at sun.reflect.GeneratedMethodAccessor436.invoke(Unknown Source) >> at >> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) >> at java.lang.reflect.Method.invoke(Method.java:597) >> at >> org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:318) >> at >> org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:196) >> at $Proxy171.getUserLayout(Unknown Source) >> at >> org.jasig.portal.layout.dlm.DistributedLayoutManager.getDistributedUserLayout(DistributedLayoutManager.java:235) >> at >> org.jasig.portal.layout.dlm.DistributedLayoutManager.getUserLayoutDOM(DistributedLayoutManager.java:221) >> at >> org.jasig.portal.layout.dlm.DistributedLayoutManager.loadUserLayout(DistributedLayoutManager.java:338) >> at >> org.jasig.portal.layout.dlm.DistributedLayoutManager.loadUserLayout(DistributedLayoutManager.java:327) >> at >> org.jasig.portal.layout.dlm.DistributedLayoutManager.afterPropertiesSet(DistributedLayoutManager.java:178) >> at >> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1514) >> at >> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1452) >> at >> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519) >> at >> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456) >> at >> org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:313) >> at >> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:201) >> at >> org.jasig.portal.layout.UserLayoutManagerFactory.getUserLayoutManager(UserLayoutManagerFactory.java:55) >> at >> org.jasig.portal.user.UserInstanceManagerImpl.getUserInstance(UserInstanceManagerImpl.java:152) >> at >> org.jasig.portal.url.UrlNodeSyntaxHelperRegistryImpl.getCurrentUrlNodeSyntaxHelper(UrlNodeSyntaxHelperRegistryImpl.java:82) >> at >> org.jasig.portal.url.UrlSyntaxProviderImpl.getPortalRequestInfo(UrlSyntaxProviderImpl.java:223) >> at >> org.jasig.portal.url.UrlSyntaxProviderImpl.getCanonicalUrl(UrlSyntaxProviderImpl.java:748) >> at >> org.jasig.portal.url.UrlCanonicalizingFilter.doFilterInternal(UrlCanonicalizingFilter.java:71) >> at >> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) >> at >> org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346) >> at >> org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259) >> at >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) >> at >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) >> at >> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:70) >> at >> org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346) >> at >> org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259) >> at >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) >> at >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) >> at >> org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88) >> at >> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) >> at >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) >> at >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) >> at >> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:311) >> at >> org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:116) >> at >> org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83) >> at >> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) >> at >> org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113) >> at >> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) >> at >> org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:101) >> at >> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) >> at >> org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:113) >> at >> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) >> at >> org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:54) >> at >> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) >> at >> org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:45) >> at >> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) >> at >> org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilter(BasicAuthenticationFilter.java:150) >> at >> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) >> at >> org.springframework.security.web.authentication.ui.DefaultLoginPageGeneratingFilter.doFilter(DefaultLoginPageGeneratingFilter.java:91) >> at >> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) >> at >> org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:182) >> at >> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) >> at >> org.springframework.security.web.authentication.preauth.AbstractPreAuthenticatedProcessingFilter.doFilter(AbstractPreAuthenticatedProcessingFilter.java:88) >> at >> org.jasig.portal.spring.security.preauth.PortalPreAuthenticatedProcessingFilter.doFilter(PortalPreAuthenticatedProcessingFilter.java:161) >> at >> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) >> at >> org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:105) >> at >> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) >> at >> org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87) >> at >> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) >> at >> org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:173) >> at >> org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346) >> at >> org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259) >> at >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) >> at >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) >> at >> org.springframework.orm.jpa.support.OpenEntityManagerInViewFilter.doFilterInternal(OpenEntityManagerInViewFilter.java:147) >> at >> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) >> at >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) >> at >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) >> at >> org.jasig.portal.utils.web.ExceptionLoggingFilter.doFilter(ExceptionLoggingFilter.java:40) >> 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:233) >> at >> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) >> at >> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) >> at >> com.googlecode.psiprobe.Tomcat60AgentValve.invoke(Tomcat60AgentValve.java:30) >> at >> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) >> at >> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:567) >> at >> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) >> at >> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293) >> at >> org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190) >> at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:291) >> at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:769) >> at >> org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:698) >> at >> org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:891) >> at >> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690) >> at java.lang.Thread.run(Thread.java:662) >> ERROR 2013-01-12 12:30:41,804 [ExceptionLoggingFilter.doFilter(ln:43)] - >> Error creating bean with name 'userLayoutManager' defined in file >> [/usr/local/apache-tomcat-6.0.20/webapps/ROOT/WEB-INF/classes/properties/contexts/layoutContext.xml]: >> Invocation of init method failed; nested exception is >> org.jasig.portal.PortalException: Exception encountered while reading a >> layout for userId=3, profileId=27308 >> >> org.springframework.beans.factory.BeanCreationException: Error creating bean >> with name 'userLayoutManager' defined in file >> [/usr/local/apache-tomcat-6.0.20/webapps/ROOT/WEB-INF/classes/properties/contexts/layoutContext.xml]: >> Invocation of init method failed; nested exception is >> org.jasig.portal.PortalException: Exception encountered while reading a >> layout for userId=3, profileId=27308 >> at >> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1455) >> at >> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519) >> at >> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456) >> at >> org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:313) >> at >> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:201) >> at >> org.jasig.portal.layout.UserLayoutManagerFactory.getUserLayoutManager(UserLayoutManagerFactory.java:55) >> at >> org.jasig.portal.user.UserInstanceManagerImpl.getUserInstance(UserInstanceManagerImpl.java:152) >> at >> org.jasig.portal.url.UrlNodeSyntaxHelperRegistryImpl.getCurrentUrlNodeSyntaxHelper(UrlNodeSyntaxHelperRegistryImpl.java:82) >> at >> org.jasig.portal.url.UrlSyntaxProviderImpl.getPortalRequestInfo(UrlSyntaxProviderImpl.java:223) >> at >> org.jasig.portal.url.UrlSyntaxProviderImpl.getCanonicalUrl(UrlSyntaxProviderImpl.java:748) >> at >> org.jasig.portal.url.UrlCanonicalizingFilter.doFilterInternal(UrlCanonicalizingFilter.java:71) >> at >> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) >> at >> org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346) >> at >> org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259) >> at >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) >> at >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) >> at >> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:70) >> at >> org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346) >> at >> org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259) >> at >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) >> at >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) >> at >> org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88) >> at >> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) >> at >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) >> at >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) >> at >> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:311) >> at >> org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:116) >> at >> org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83) >> at >> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) >> at >> org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113) >> at >> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) >> at >> org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:101) >> at >> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) >> at >> org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:113) >> at >> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) >> at >> org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:54) >> at >> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) >> at >> org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:45) >> at >> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) >> at >> org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilter(BasicAuthenticationFilter.java:150) >> at >> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) >> at >> org.springframework.security.web.authentication.ui.DefaultLoginPageGeneratingFilter.doFilter(DefaultLoginPageGeneratingFilter.java:91) >> at >> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) >> at >> org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:182) >> at >> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) >> at >> org.springframework.security.web.authentication.preauth.AbstractPreAuthenticatedProcessingFilter.doFilter(AbstractPreAuthenticatedProcessingFilter.java:88) >> at >> org.jasig.portal.spring.security.preauth.PortalPreAuthenticatedProcessingFilter.doFilter(PortalPreAuthenticatedProcessingFilter.java:161) >> at >> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) >> at >> org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:105) >> at >> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) >> at >> org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87) >> at >> org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323) >> at >> org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:173) >> at >> org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346) >> at >> org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259) >> at >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) >> at >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) >> at >> org.springframework.orm.jpa.support.OpenEntityManagerInViewFilter.doFilterInternal(OpenEntityManagerInViewFilter.java:147) >> at >> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) >> at >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) >> at >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) >> at >> org.jasig.portal.utils.web.ExceptionLoggingFilter.doFilter(ExceptionLoggingFilter.java:40) >> 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:233) >> at >> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) >> at >> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) >> at >> com.googlecode.psiprobe.Tomcat60AgentValve.invoke(Tomcat60AgentValve.java:30) >> at >> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) >> at >> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:567) >> at >> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) >> at >> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293) >> at >> org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190) >> at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:291) >> at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:769) >> at >> org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:698) >> at >> org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:891) >> at >> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690) >> at java.lang.Thread.run(Thread.java:662) >> Caused by: org.jasig.portal.PortalException: Exception encountered while >> reading a layout for userId=3, profileId=27308 >> at >> org.jasig.portal.layout.dlm.DistributedLayoutManager.loadUserLayout(DistributedLayoutManager.java:340) >> at >> org.jasig.portal.layout.dlm.DistributedLayoutManager.loadUserLayout(DistributedLayoutManager.java:327) >> at >> org.jasig.portal.layout.dlm.DistributedLayoutManager.afterPropertiesSet(DistributedLayoutManager.java:178) >> at >> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1514) >> at >> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1452) >> ... 78 more >> Caused by: java.lang.NullPointerException >> at >> org.jasig.portal.layout.dlm.DistributedLayoutManager.getUserLayoutDOM(DistributedLayoutManager.java:222) >> at >> org.jasig.portal.layout.dlm.DistributedLayoutManager.loadUserLayout(DistributedLayoutManager.java:338) >> ... 82 more >> >> Thanks for your help. >> Bill Brown >> -- You are currently subscribed to uportal-dev@lists.ja-sig.org as: arch...@mail-archive.com To unsubscribe, change settings or access archives, see http://www.ja-sig.org/wiki/display/JSG/uportal-dev