Demonstrating consuming Sakai WSRP

This page is for instructions on demonstrating the uPortal 3 WSRP consumer consuming WSRP produced by Sakai 2.1.0.

Setup

Deploy Sakai 2.1.0 on localhost 8180. Deploy uPortal 3 on localhost 8080.

Hack uPortal 3 data.xml to point the WSRP consumer portlet at the Sakai announcements tool.

Hacking uP3 data.xml to point at Sakai WSRP producer
            <row>
                <!-- Portlet handle -->
                <column><name>PREF_ID</name><sequence id="portletPref">uP3.WsrpProxyPortlet.1</sequence></column>
                <column><name>VALUE</name><sequence id="portletEntity">sakai.announcements</sequence></column>
                <column><name>SORT_ORDER</name><value>0</value></column>
            </row>
            <row>
                <!-- Producer ID -->
                <column><name>PREF_ID</name><sequence id="portletPref">uP3.WsrpProxyPortlet.2</sequence></column>
                <column><name>VALUE</name><value>sakai.announcements</value></column>
                <column><name>SORT_ORDER</name><value>0</value></column>
            </row>
            <row>
                <!-- Service description -->
                <column><name>PREF_ID</name><sequence id="portletPref">uP3.WsrpProxyPortlet.3</sequence></column>
                <column><name>VALUE</name><value>http://localhost:8180/sakai-wsrp-producer/wsrp4j/WSRPServiceDescriptionService</value></column>
                <column><name>SORT_ORDER</name><value>0</value></column>
            </row>
            <row>
                <!-- Registration -->
                <column><name>PREF_ID</name><sequence id="portletPref">uP3.WsrpProxyPortlet.4</sequence></column>
                <column><name>VALUE</name><value>http://localhost:8180/sakai-wsrp-producer/wsrp4j/WSRPRegistrationService</value></column>
                <column><name>SORT_ORDER</name><value>0</value></column>
            </row>
            <row>
                <!-- Markup -->
                <column><name>PREF_ID</name><sequence id="portletPref">uP3.WsrpProxyPortlet.5</sequence></column>
                <column><name>VALUE</name><value>http://localhost:8180/sakai-wsrp-producer/wsrp4j/WSRPBaseService</value></column>
                <column><name>SORT_ORDER</name><value>0</value></column>
            </row>
            <row>
                <!-- Portlet management -->
                <column><name>PREF_ID</name><sequence id="portletPref">uP3.WsrpProxyPortlet.6</sequence></column>
                <column><name>VALUE</name><value>http://localhost:8180/sakai-wsrp-producer/wsrp4j/WSRPPortletManagementService</value></column>
                <column><name>SORT_ORDER</name><value>0</value></column>
            </row>

Stack trace

This is the stack trace I'm currently getting in the uPortal 3 WSRP consumer when I do this (logged in as admin):

 Caused by: org.jasig.portal.portlet.rendering.PortletRenderingException: Problem occurred in rendering portlet window id=4.
   at org.jasig.portal.portlet.rendering.LinearPortletRenderingModel.startPortletRendering(LinearPortletRenderingModel.java:70)
   at org.jasig.portal.portlet.rendering.PortletWindowManagerImpl.startPortletRendering(PortletWindowManagerImpl.java:93)
   at org.jasig.portal.rendering.string.PortletRenderingInitiationFilter.processMatch(PortletRenderingInitiationFilter.java:56)
   at org.jasig.portal.rendering.string.RegexStringFilter.filterRendering(RegexStringFilter.java:46)
   at org.jasig.portal.rendering.hybrid.SaxToStringCacheFilter.endDocument(SaxToStringCacheFilter.java:253)
   at org.apache.xml.serializer.ToHTMLSAXHandler.endDocument(ToHTMLSAXHandler.java:424)
   at org.apache.xalan.transformer.TransformerImpl.transformNode(TransformerImpl.java:1287)
   at org.apache.xalan.transformer.TransformerImpl.run(TransformerImpl.java:3383)
   at org.apache.xalan.transformer.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:389)
   at org.jasig.portal.rendering.sax.ContentHandlerConsumer.endDocument(ContentHandlerConsumer.java:43)
   at org.jasig.portal.rendering.sax.SaxFilterImpl.endDocument(SaxFilterImpl.java:679)
   at org.jasig.portal.rendering.sax.xslt.TransformationFilter.endDocument(TransformationFilter.java:231)
   at org.apache.xml.serializer.ToXMLSAXHandler.endDocument(ToXMLSAXHandler.java:182)
   at org.apache.xalan.transformer.TransformerImpl.transformNode(TransformerImpl.java:1287)
   at org.apache.xalan.transformer.TransformerImpl.run(TransformerImpl.java:3383)
   at org.apache.xalan.transformer.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:389)
   at org.jasig.portal.rendering.sax.ContentHandlerConsumer.endDocument(ContentHandlerConsumer.java:43)
   at org.jasig.portal.rendering.sax.SaxFilterImpl.endDocument(SaxFilterImpl.java:679)
   at org.jasig.portal.rendering.sax.xslt.TransformationFilter.endDocument(TransformationFilter.java:231)
   at org.jasig.portal.rendering.sax.SaxFilterImpl.endDocument(SaxFilterImpl.java:679)
   at org.apache.xalan.transformer.TransformerIdentityImpl.endDocument(TransformerIdentityImpl.java:910)
   at org.apache.xml.utils.TreeWalker.traverse(TreeWalker.java:190)
   at org.apache.xalan.transformer.TransformerIdentityImpl.transform(TransformerIdentityImpl.java:337)
   at org.jasig.portal.layout.uportal2.simple.SimpleUserLayoutManager.getUserLayout(SimpleUserLayoutManager.java:177)
   at org.jasig.portal.layout.uportal2.simple.SimpleUserLayoutManager.getUserLayout(SimpleUserLayoutManager.java:140)
   at org.jasig.portal.layout.uportal2.UserAwareLayoutManager.getUserLayout(UserAwareLayoutManager.java:209)
   at org.jasig.portal.layout.uportal2.LegacyLayoutSource.render(LegacyLayoutSource.java:49)
   at org.jasig.portal.rendering.TreeRenderer.render(TreeRenderer.java:43)
   at org.jasig.portal.context.CompoundContext.service(CompoundContext.java:60)
   at org.jasig.portal.context.CompoundContext$$FastClassByCGLIB$$193e90a1.invoke(<generated>)
   at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
   at org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:635)
   at org.jasig.portal.context.CompoundContext$$EnhancerByCGLIB$$346b4f2b.service(<generated>)
   at org.jasig.portal.core.PortalServlet.service(PortalServlet.java:93)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
   at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:292)
   at org.jasig.portal.security.acegi.HttpRequestContextIntegrationFilter.doFilter(HttpRequestContextIntegrationFilter.java:33)
   at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
   at net.sf.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:84)
   at net.sf.acegisecurity.intercept.web.SecurityEnforcementFilter.doFilter(SecurityEnforcementFilter.java:182)
   at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
   at net.sf.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:153)
   at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
   at net.sf.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:305)
   at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
   at net.sf.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:226)
   at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
   at net.sf.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:173)
   at net.sf.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:125)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
   at org.jasig.portal.utils.SessionLocalBindingFilter.doFilter(SessionLocalBindingFilter.java:88)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
   at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
   at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
   at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
   at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
   at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
   at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
   at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:868)
   at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:663)
   at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
   at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
   at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
   at java.lang.Thread.run(Thread.java:534)
Caused by: javax.portlet.PortletException: Error occured while retrieving markup
   at org.jasig.portal.wsrp.consumer.WsrpProxyPortlet.render(WsrpProxyPortlet.java:390)
   at org.apache.pluto.core.PortletServlet.dispatch(PortletServlet.java:218)
   at org.apache.pluto.core.PortletServlet.doGet(PortletServlet.java:158)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
   at org.apache.pluto.core.PortletServlet.service(PortletServlet.java:153)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
   at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672)
   at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:574)
   at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:499)
   at org.apache.pluto.invoker.impl.PortletInvokerImpl.invoke(PortletInvokerImpl.java:120)
   at org.apache.pluto.invoker.impl.PortletInvokerImpl.render(PortletInvokerImpl.java:73)
   at org.apache.pluto.PortletContainerImpl.renderPortlet(PortletContainerImpl.java:119)
   at org.jasig.portal.portlet.rendering.LinearPortletRenderingModel.startPortletRendering(LinearPortletRenderingModel.java:66)
   at org.jasig.portal.portlet.rendering.PortletWindowManagerImpl.startPortletRendering(PortletWindowManagerImpl.java:93)
   at org.jasig.portal.rendering.string.PortletRenderingInitiationFilter.processMatch(PortletRenderingInitiationFilter.java:56)
   at org.jasig.portal.rendering.string.RegexStringFilter.filterRendering(RegexStringFilter.java:46)
   at org.jasig.portal.rendering.hybrid.SaxToStringCacheFilter.endDocument(SaxToStringCacheFilter.java:253)
   at org.apache.xml.serializer.ToHTMLSAXHandler.endDocument(ToHTMLSAXHandler.java:424)
   at org.apache.xalan.transformer.TransformerImpl.transformNode(TransformerImpl.java:1287)
   at org.apache.xalan.transformer.TransformerImpl.run(TransformerImpl.java:3383)
   at org.apache.xalan.transformer.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:389)
   at org.jasig.portal.rendering.sax.ContentHandlerConsumer.endDocument(ContentHandlerConsumer.java:43)
   at org.jasig.portal.rendering.sax.SaxFilterImpl.endDocument(SaxFilterImpl.java:679)
   at org.jasig.portal.rendering.sax.xslt.TransformationFilter.endDocument(TransformationFilter.java:231)
   at org.apache.xml.serializer.ToXMLSAXHandler.endDocument(ToXMLSAXHandler.java:182)
   at org.apache.xalan.transformer.TransformerImpl.transformNode(TransformerImpl.java:1287)
   at org.apache.xalan.transformer.TransformerImpl.run(TransformerImpl.java:3383)
   at org.apache.xalan.transformer.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:389)
   at org.jasig.portal.rendering.sax.ContentHandlerConsumer.endDocument(ContentHandlerConsumer.java:43)
   at org.jasig.portal.rendering.sax.SaxFilterImpl.endDocument(SaxFilterImpl.java:679)
   at org.jasig.portal.rendering.sax.xslt.TransformationFilter.endDocument(TransformationFilter.java:231)
   at org.jasig.portal.rendering.sax.SaxFilterImpl.endDocument(SaxFilterImpl.java:679)
   at org.apache.xalan.transformer.TransformerIdentityImpl.endDocument(TransformerIdentityImpl.java:910)
   at org.apache.xml.utils.TreeWalker.traverse(TreeWalker.java:190)
   at org.apache.xalan.transformer.TransformerIdentityImpl.transform(TransformerIdentityImpl.java:337)
   at org.jasig.portal.layout.uportal2.simple.SimpleUserLayoutManager.getUserLayout(SimpleUserLayoutManager.java:177)
   at org.jasig.portal.layout.uportal2.simple.SimpleUserLayoutManager.getUserLayout(SimpleUserLayoutManager.java:140)
   at org.jasig.portal.layout.uportal2.UserAwareLayoutManager.getUserLayout(UserAwareLayoutManager.java:209)
   at org.jasig.portal.layout.uportal2.LegacyLayoutSource.render(LegacyLayoutSource.java:49)
   at org.jasig.portal.rendering.TreeRenderer.render(TreeRenderer.java:43)
   at org.jasig.portal.context.CompoundContext.service(CompoundContext.java:60)
   at org.jasig.portal.context.CompoundContext$$FastClassByCGLIB$$193e90a1.invoke(<generated>)
   at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
   at org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:635)
   at org.jasig.portal.context.CompoundContext$$EnhancerByCGLIB$$346b4f2b.service(<generated>)
   at org.jasig.portal.core.PortalServlet.service(PortalServlet.java:93)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
   at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:292)
   at org.jasig.portal.security.acegi.HttpRequestContextIntegrationFilter.doFilter(HttpRequestContextIntegrationFilter.java:33)
   at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
   at net.sf.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:84)
   at net.sf.acegisecurity.intercept.web.SecurityEnforcementFilter.doFilter(SecurityEnforcementFilter.java:182)
   at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
   at net.sf.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:153)
   at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
   at net.sf.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:305)
   at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
   at net.sf.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:226)
   at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
   at net.sf.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:173)
   at net.sf.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:125)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
   at org.jasig.portal.utils.SessionLocalBindingFilter.doFilter(SessionLocalBindingFilter.java:88)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
   at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
   at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
   at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
   at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
   at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
   at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
   at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:868)
   at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:663)
   at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
   at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
   at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
   at java.lang.Thread.run(Thread.java:534)
Caused by: java.lang.RuntimeException: Exception occured while trying to get a group ID
   at org.jasig.portal.wsrp.consumer.WsrpProxyPortlet.getWindowSession(WsrpProxyPortlet.java:463)
   at org.jasig.portal.wsrp.consumer.WsrpProxyPortlet.render(WsrpProxyPortlet.java:344)
   at org.apache.pluto.core.PortletServlet.dispatch(PortletServlet.java:218)
   at org.apache.pluto.core.PortletServlet.doGet(PortletServlet.java:158)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
   at org.apache.pluto.core.PortletServlet.service(PortletServlet.java:153)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
   at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672)
   at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:574)
   at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:499)
   at org.apache.pluto.invoker.impl.PortletInvokerImpl.invoke(PortletInvokerImpl.java:120)
   at org.apache.pluto.invoker.impl.PortletInvokerImpl.render(PortletInvokerImpl.java:73)
   at org.apache.pluto.PortletContainerImpl.renderPortlet(PortletContainerImpl.java:119)
   at org.jasig.portal.portlet.rendering.LinearPortletRenderingModel.startPortletRendering(LinearPortletRenderingModel.java:66)
   at org.jasig.portal.portlet.rendering.PortletWindowManagerImpl.startPortletRendering(PortletWindowManagerImpl.java:93)
   at org.jasig.portal.rendering.string.PortletRenderingInitiationFilter.processMatch(PortletRenderingInitiationFilter.java:56)
   at org.jasig.portal.rendering.string.RegexStringFilter.filterRendering(RegexStringFilter.java:46)
   at org.jasig.portal.rendering.hybrid.SaxToStringCacheFilter.endDocument(SaxToStringCacheFilter.java:253)
   at org.apache.xml.serializer.ToHTMLSAXHandler.endDocument(ToHTMLSAXHandler.java:424)
   at org.apache.xalan.transformer.TransformerImpl.transformNode(TransformerImpl.java:1287)
   at org.apache.xalan.transformer.TransformerImpl.run(TransformerImpl.java:3383)
   at org.apache.xalan.transformer.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:389)
   at org.jasig.portal.rendering.sax.ContentHandlerConsumer.endDocument(ContentHandlerConsumer.java:43)
   at org.jasig.portal.rendering.sax.SaxFilterImpl.endDocument(SaxFilterImpl.java:679)
   at org.jasig.portal.rendering.sax.xslt.TransformationFilter.endDocument(TransformationFilter.java:231)
   at org.apache.xml.serializer.ToXMLSAXHandler.endDocument(ToXMLSAXHandler.java:182)
   at org.apache.xalan.transformer.TransformerImpl.transformNode(TransformerImpl.java:1287)
   at org.apache.xalan.transformer.TransformerImpl.run(TransformerImpl.java:3383)
   at org.apache.xalan.transformer.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:389)
   at org.jasig.portal.rendering.sax.ContentHandlerConsumer.endDocument(ContentHandlerConsumer.java:43)
   at org.jasig.portal.rendering.sax.SaxFilterImpl.endDocument(SaxFilterImpl.java:679)
   at org.jasig.portal.rendering.sax.xslt.TransformationFilter.endDocument(TransformationFilter.java:231)
   at org.jasig.portal.rendering.sax.SaxFilterImpl.endDocument(SaxFilterImpl.java:679)
   at org.apache.xalan.transformer.TransformerIdentityImpl.endDocument(TransformerIdentityImpl.java:910)
   at org.apache.xml.utils.TreeWalker.traverse(TreeWalker.java:190)
   at org.apache.xalan.transformer.TransformerIdentityImpl.transform(TransformerIdentityImpl.java:337)
   at org.jasig.portal.layout.uportal2.simple.SimpleUserLayoutManager.getUserLayout(SimpleUserLayoutManager.java:177)
   at org.jasig.portal.layout.uportal2.simple.SimpleUserLayoutManager.getUserLayout(SimpleUserLayoutManager.java:140)
   at org.jasig.portal.layout.uportal2.UserAwareLayoutManager.getUserLayout(UserAwareLayoutManager.java:209)
   at org.jasig.portal.layout.uportal2.LegacyLayoutSource.render(LegacyLayoutSource.java:49)
   at org.jasig.portal.rendering.TreeRenderer.render(TreeRenderer.java:43)
   at org.jasig.portal.context.CompoundContext.service(CompoundContext.java:60)
   at org.jasig.portal.context.CompoundContext$$FastClassByCGLIB$$193e90a1.invoke(<generated>)
   at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
   at org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:635)
   at org.jasig.portal.context.CompoundContext$$EnhancerByCGLIB$$346b4f2b.service(<generated>)
   at org.jasig.portal.core.PortalServlet.service(PortalServlet.java:93)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
   at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:292)
   at org.jasig.portal.security.acegi.HttpRequestContextIntegrationFilter.doFilter(HttpRequestContextIntegrationFilter.java:33)
   at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
   at net.sf.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:84)
   at net.sf.acegisecurity.intercept.web.SecurityEnforcementFilter.doFilter(SecurityEnforcementFilter.java:182)
   at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
   at net.sf.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:153)
   at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
   at net.sf.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:305)
   at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
   at net.sf.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:226)
   at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
   at net.sf.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:173)
   at net.sf.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:125)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
   at org.jasig.portal.utils.SessionLocalBindingFilter.doFilter(SessionLocalBindingFilter.java:88)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
   at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
   at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
   at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
   at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
   at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
   at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
   at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:868)
   at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:663)
   at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
   at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
   at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
   at java.lang.Thread.run(Thread.java:534)
Caused by: java.lang.RuntimeException: Error occured while trying to retrieve the portlet description
   at org.jasig.portal.wsrp.consumer.WsrpProxyPortlet.getPortletDescription(WsrpProxyPortlet.java:671)
   at org.jasig.portal.wsrp.consumer.WsrpProxyPortlet.getWindowSession(WsrpProxyPortlet.java:461)
   at org.jasig.portal.wsrp.consumer.WsrpProxyPortlet.render(WsrpProxyPortlet.java:344)
   at org.apache.pluto.core.PortletServlet.dispatch(PortletServlet.java:218)
   at org.apache.pluto.core.PortletServlet.doGet(PortletServlet.java:158)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
   at org.apache.pluto.core.PortletServlet.service(PortletServlet.java:153)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
   at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672)
   at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:574)
   at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:499)
   at org.apache.pluto.invoker.impl.PortletInvokerImpl.invoke(PortletInvokerImpl.java:120)
   at org.apache.pluto.invoker.impl.PortletInvokerImpl.render(PortletInvokerImpl.java:73)
   at org.apache.pluto.PortletContainerImpl.renderPortlet(PortletContainerImpl.java:119)
   at org.jasig.portal.portlet.rendering.LinearPortletRenderingModel.startPortletRendering(LinearPortletRenderingModel.java:66)
   at org.jasig.portal.portlet.rendering.PortletWindowManagerImpl.startPortletRendering(PortletWindowManagerImpl.java:93)
   at org.jasig.portal.rendering.string.PortletRenderingInitiationFilter.processMatch(PortletRenderingInitiationFilter.java:56)
   at org.jasig.portal.rendering.string.RegexStringFilter.filterRendering(RegexStringFilter.java:46)
   at org.jasig.portal.rendering.hybrid.SaxToStringCacheFilter.endDocument(SaxToStringCacheFilter.java:253)
   at org.apache.xml.serializer.ToHTMLSAXHandler.endDocument(ToHTMLSAXHandler.java:424)
   at org.apache.xalan.transformer.TransformerImpl.transformNode(TransformerImpl.java:1287)
   at org.apache.xalan.transformer.TransformerImpl.run(TransformerImpl.java:3383)
   at org.apache.xalan.transformer.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:389)
   at org.jasig.portal.rendering.sax.ContentHandlerConsumer.endDocument(ContentHandlerConsumer.java:43)
   at org.jasig.portal.rendering.sax.SaxFilterImpl.endDocument(SaxFilterImpl.java:679)
   at org.jasig.portal.rendering.sax.xslt.TransformationFilter.endDocument(TransformationFilter.java:231)
   at org.apache.xml.serializer.ToXMLSAXHandler.endDocument(ToXMLSAXHandler.java:182)
   at org.apache.xalan.transformer.TransformerImpl.transformNode(TransformerImpl.java:1287)
   at org.apache.xalan.transformer.TransformerImpl.run(TransformerImpl.java:3383)
   at org.apache.xalan.transformer.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:389)
   at org.jasig.portal.rendering.sax.ContentHandlerConsumer.endDocument(ContentHandlerConsumer.java:43)
   at org.jasig.portal.rendering.sax.SaxFilterImpl.endDocument(SaxFilterImpl.java:679)
   at org.jasig.portal.rendering.sax.xslt.TransformationFilter.endDocument(TransformationFilter.java:231)
   at org.jasig.portal.rendering.sax.SaxFilterImpl.endDocument(SaxFilterImpl.java:679)
   at org.apache.xalan.transformer.TransformerIdentityImpl.endDocument(TransformerIdentityImpl.java:910)
   at org.apache.xml.utils.TreeWalker.traverse(TreeWalker.java:190)
   at org.apache.xalan.transformer.TransformerIdentityImpl.transform(TransformerIdentityImpl.java:337)
   at org.jasig.portal.layout.uportal2.simple.SimpleUserLayoutManager.getUserLayout(SimpleUserLayoutManager.java:177)
   at org.jasig.portal.layout.uportal2.simple.SimpleUserLayoutManager.getUserLayout(SimpleUserLayoutManager.java:140)
   at org.jasig.portal.layout.uportal2.UserAwareLayoutManager.getUserLayout(UserAwareLayoutManager.java:209)
   at org.jasig.portal.layout.uportal2.LegacyLayoutSource.render(LegacyLayoutSource.java:49)
   at org.jasig.portal.rendering.TreeRenderer.render(TreeRenderer.java:43)
   at org.jasig.portal.context.CompoundContext.service(CompoundContext.java:60)
   at org.jasig.portal.context.CompoundContext$$FastClassByCGLIB$$193e90a1.invoke(<generated>)
   at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
   at org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:635)
   at org.jasig.portal.context.CompoundContext$$EnhancerByCGLIB$$346b4f2b.service(<generated>)
   at org.jasig.portal.core.PortalServlet.service(PortalServlet.java:93)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
   at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:292)
   at org.jasig.portal.security.acegi.HttpRequestContextIntegrationFilter.doFilter(HttpRequestContextIntegrationFilter.java:33)
   at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
   at net.sf.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:84)
   at net.sf.acegisecurity.intercept.web.SecurityEnforcementFilter.doFilter(SecurityEnforcementFilter.java:182)
   at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
   at net.sf.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:153)
   at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
   at net.sf.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:305)
   at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
   at net.sf.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:226)
   at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
   at net.sf.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:173)
   at net.sf.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:125)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
   at org.jasig.portal.utils.SessionLocalBindingFilter.doFilter(SessionLocalBindingFilter.java:88)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
   at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
   at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
   at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
   at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
   at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
   at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
   at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:868)
   at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:663)
   at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
   at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
   at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
   at java.lang.Thread.run(Thread.java:534)
Caused by: org.apache.wsrp4j.exception.WSRPException: No message found.
   at org.apache.wsrp4j.exception.WSRPXHelper.getException(WSRPXHelper.java:723)
   at org.apache.wsrp4j.exception.WSRPXHelper.throwX(WSRPXHelper.java:111)
   at org.apache.wsrp4j.consumer.driver.ProducerImpl.getPortletDescription(ProducerImpl.java:534)
   at org.jasig.portal.wsrp.consumer.WsrpProxyPortlet.getPortletDescription(WsrpProxyPortlet.java:669)
   at org.jasig.portal.wsrp.consumer.WsrpProxyPortlet.getWindowSession(WsrpProxyPortlet.java:461)
   at org.jasig.portal.wsrp.consumer.WsrpProxyPortlet.render(WsrpProxyPortlet.java:344)
   at org.apache.pluto.core.PortletServlet.dispatch(PortletServlet.java:218)
   at org.apache.pluto.core.PortletServlet.doGet(PortletServlet.java:158)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
   at org.apache.pluto.core.PortletServlet.service(PortletServlet.java:153)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
   at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672)
   at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:574)
   at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:499)
   at org.apache.pluto.invoker.impl.PortletInvokerImpl.invoke(PortletInvokerImpl.java:120)
   at org.apache.pluto.invoker.impl.PortletInvokerImpl.render(PortletInvokerImpl.java:73)
   at org.apache.pluto.PortletContainerImpl.renderPortlet(PortletContainerImpl.java:119)
   at org.jasig.portal.portlet.rendering.LinearPortletRenderingModel.startPortletRendering(LinearPortletRenderingModel.java:66)
   at org.jasig.portal.portlet.rendering.PortletWindowManagerImpl.startPortletRendering(PortletWindowManagerImpl.java:93)
   at org.jasig.portal.rendering.string.PortletRenderingInitiationFilter.processMatch(PortletRenderingInitiationFilter.java:56)
   at org.jasig.portal.rendering.string.RegexStringFilter.filterRendering(RegexStringFilter.java:46)
   at org.jasig.portal.rendering.hybrid.SaxToStringCacheFilter.endDocument(SaxToStringCacheFilter.java:253)
   at org.apache.xml.serializer.ToHTMLSAXHandler.endDocument(ToHTMLSAXHandler.java:424)
   at org.apache.xalan.transformer.TransformerImpl.transformNode(TransformerImpl.java:1287)
   at org.apache.xalan.transformer.TransformerImpl.run(TransformerImpl.java:3383)
   at org.apache.xalan.transformer.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:389)
   at org.jasig.portal.rendering.sax.ContentHandlerConsumer.endDocument(ContentHandlerConsumer.java:43)
   at org.jasig.portal.rendering.sax.SaxFilterImpl.endDocument(SaxFilterImpl.java:679)
   at org.jasig.portal.rendering.sax.xslt.TransformationFilter.endDocument(TransformationFilter.java:231)
   at org.apache.xml.serializer.ToXMLSAXHandler.endDocument(ToXMLSAXHandler.java:182)
   at org.apache.xalan.transformer.TransformerImpl.transformNode(TransformerImpl.java:1287)
   at org.apache.xalan.transformer.TransformerImpl.run(TransformerImpl.java:3383)
   at org.apache.xalan.transformer.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:389)
   at org.jasig.portal.rendering.sax.ContentHandlerConsumer.endDocument(ContentHandlerConsumer.java:43)
   at org.jasig.portal.rendering.sax.SaxFilterImpl.endDocument(SaxFilterImpl.java:679)
   at org.jasig.portal.rendering.sax.xslt.TransformationFilter.endDocument(TransformationFilter.java:231)
   at org.jasig.portal.rendering.sax.SaxFilterImpl.endDocument(SaxFilterImpl.java:679)
   at org.apache.xalan.transformer.TransformerIdentityImpl.endDocument(TransformerIdentityImpl.java:910)
   at org.apache.xml.utils.TreeWalker.traverse(TreeWalker.java:190)
   at org.apache.xalan.transformer.TransformerIdentityImpl.transform(TransformerIdentityImpl.java:337)
   at org.jasig.portal.layout.uportal2.simple.SimpleUserLayoutManager.getUserLayout(SimpleUserLayoutManager.java:177)
   at org.jasig.portal.layout.uportal2.simple.SimpleUserLayoutManager.getUserLayout(SimpleUserLayoutManager.java:140)
   at org.jasig.portal.layout.uportal2.UserAwareLayoutManager.getUserLayout(UserAwareLayoutManager.java:209)
   at org.jasig.portal.layout.uportal2.LegacyLayoutSource.render(LegacyLayoutSource.java:49)
   at org.jasig.portal.rendering.TreeRenderer.render(TreeRenderer.java:43)
   at org.jasig.portal.context.CompoundContext.service(CompoundContext.java:60)
   at org.jasig.portal.context.CompoundContext$$FastClassByCGLIB$$193e90a1.invoke(<generated>)
   at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
   at org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:635)
   at org.jasig.portal.context.CompoundContext$$EnhancerByCGLIB$$346b4f2b.service(<generated>)
   at org.jasig.portal.core.PortalServlet.service(PortalServlet.java:93)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
   at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:292)
   at org.jasig.portal.security.acegi.HttpRequestContextIntegrationFilter.doFilter(HttpRequestContextIntegrationFilter.java:33)
   at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
   at net.sf.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:84)
   at net.sf.acegisecurity.intercept.web.SecurityEnforcementFilter.doFilter(SecurityEnforcementFilter.java:182)
   at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
   at net.sf.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:153)
   at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
   at net.sf.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:305)
   at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
   at net.sf.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:226)
   at net.sf.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
   at net.sf.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:173)
   at net.sf.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:125)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
   at org.jasig.portal.utils.SessionLocalBindingFilter.doFilter(SessionLocalBindingFilter.java:88)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
   at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
   at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
   at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
   at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
   at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
   at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
   at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:868)
   at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:663)
   at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
   at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
   at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
   at java.lang.Thread.run(Thread.java:534)

Help

Anyone have this working?