Hi all,

We used to be able to successfully call channels via fname from all  
layouts.  We're now finding that after merging in uPortal 2.6RC1  
changes channels can't be successfully instantiated by fname from the  
guest layout if the channel isn't already a part of the guest layout.

Once upon a time, we'd added a local change to make  
UserLayoutManagerFactory.java read as follows:

     public static IUserLayoutManager  
immutableUserLayoutManager(IUserLayoutManager man) throws  
PortalException {
         IUserLayoutManager iulm = new  
ImmutableUserLayoutManagerWrapper(man);
         IUserLayoutManager ulmWrapper = new  
TransientUserLayoutManagerWrapper(iulm);
         return ulmWrapper;
     }

Now, this wrapping the immutable user layout manager in the transient  
user layout manager causes the whole guest layout to become  
unavailable (as in accessing the portal as the guest user results in a  
"Programming error" message, without even trying to do anything fname- 
related).  I'm not quite sure what's causing the problem, but it seems  
like the layout it's trying to transform is null.  I've included the  
related stack trace below.

Does anyone have any ideas on why this feature stopped working as of  
2.6, or how we can get it working now?

- Jen


DEBUG [http-8080-Processor25] dlm.DistributedLayoutManager.[] Dec/03  
13:10:53 - domRequest: 3
DEBUG [http-8080-Processor25] dlm.DistributedLayoutManager.[] Dec/03  
13:10:53 - Layout event stream for guest starting.
DEBUG [http-8080-Processor25] dlm.DistributedLayoutManager.[] Dec/03  
13:10:54 - Layout event stream for guest incurred exception.
java.util.EmptyStackException
         at org.apache.xml.utils.IntStack.peek(IntStack.java:125)
         at  
org.apache.xml.dtm.ref.sax2dtm.SAX2DTM.endElement(SAX2DTM.java:2032)
         at  
org 
.apache 
.xalan 
.transformer 
.TransformerHandlerImpl.endElement(TransformerHandlerImpl.java:522)
         at  
org 
.jasig 
.portal 
.utils 
.SAX2DuplicatingFilterImpl.endElement(SAX2DuplicatingFilterImpl.java: 
563)
         at  
org.jasig.portal.utils.SAX2FilterImpl.endElement(SAX2FilterImpl.java: 
734)
         at  
org.jasig.portal.utils.SAX2FilterImpl.endElement(SAX2FilterImpl.java: 
734)
         at  
org.jasig.portal.utils.SAX2FilterImpl.endElement(SAX2FilterImpl.java: 
734)
         at  
org.jasig.portal.utils.SAX2FilterImpl.endElement(SAX2FilterImpl.java: 
734)
         at  
org 
.apache 
.xalan 
.transformer 
.TransformerIdentityImpl.endElement(TransformerIdentityImpl.java:1101)
         at  
org.apache.xml.serializer.TreeWalker.endNode(TreeWalker.java:458)
         at  
org.apache.xml.serializer.TreeWalker.traverse(TreeWalker.java:149)
         at  
org 
.apache 
.xalan 
.transformer 
.TransformerIdentityImpl.transform(TransformerIdentityImpl.java:389)
         at  
org 
.jasig 
.portal 
.layout 
.dlm 
.DistributedLayoutManager.getUserLayout(DistributedLayoutManager.java: 
370)
         at  
org 
.jasig 
.portal 
.layout 
.dlm 
.DistributedLayoutManager.getUserLayout(DistributedLayoutManager.java: 
335)
         at  
org 
.jasig 
.portal 
.layout 
.TransientUserLayoutManagerWrapper 
.getUserLayout(TransientUserLayoutManagerWrapper.java:101)
         at  
org 
.jasig 
.portal 
.layout 
.immutable 
.ImmutableUserLayoutManagerWrapper 
.getUserLayout(ImmutableUserLayoutManagerWrapper.java:54)
         at  
org 
.jasig 
.portal 
.layout 
.TransientUserLayoutManagerWrapper 
.getUserLayout(TransientUserLayoutManagerWrapper.java:101)
         at  
org.jasig.portal.UserInstance.renderState(UserInstance.java:557)
         at  
org.jasig.portal.GuestUserInstance.writeContent(GuestUserInstance.java: 
173)
         at  
org.jasig.portal.PortalSessionManager.doGet(PortalSessionManager.java: 
285)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
         at  
org 
.apache 
.catalina 
.core 
.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java: 
269)
         at  
org 
.apache 
.catalina 
.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
         at  
org 
.apache 
.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java: 
213)
         at  
org 
.apache 
.catalina.core.StandardContextValve.invoke(StandardContextValve.java: 
174)
         at  
org 
.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java: 
127)
         at  
org 
.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java: 
117)
         at  
org 
.apache 
.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
         at  
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java: 
151)
         at  
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java: 
874)
         at org.apache.coyote.http11.Http11BaseProtocol 
$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
         at  
org 
.apache 
.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
         at  
org 
.apache 
.tomcat 
.util 
.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java: 
81)
         at org.apache.tomcat.util.threads.ThreadPool 
$ControlRunnable.run(ThreadPool.java:689)
         at java.lang.Thread.run(Thread.java:613)


---------------------------------
Jennifer Bourey
Technology and Planning
Yale University ITS
203.432.5718


-- 
You are currently subscribed to [email protected] as: [EMAIL 
PROTECTED]
To unsubscribe, change settings or access archives, see 
http://www.ja-sig.org/wiki/display/JSG/uportal-dev

Reply via email to