cocoon-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ralph Goers <Ralph.Go...@dslextreme.com>
Subject Re: Problems with JSR-168 portlets over Portal Engine.
Date Wed, 24 Nov 2004 06:58:56 GMT
I have not looked at item 1 yet. I will try to over my Thanksgiving 
weekend. 

The specific problem in item 2 was fixed and is in 2.1.6.  However, the 
support for portlet preferences is not in 2.1.6.  I just checked that 
into the 2.2 branch today.  I am waiting a couple of days to see if I 
get any negative responses to a post on the dev list.  I might as well 
post the issue here as well.

As you probably know, the Cocoon Portal has several configuration files. 
Of particular interest to me were the copletinstancedata and layout 
portal.xml files.  In determining what to do about storing JSR-168 
prefernces it seemed the "obvious" place to store them would be in the 
copletinstancedata portal.xml file, because this file was already being 
stored on a per-user basis and contained all the Cocoon portlet 
definitions, including the JSR-168 portlets.  Coding this wasn't much of 
a problem, however I soon discovered that the files Cocoon was 
generating (via Castor) could not be re-read by Cocoon.  As a 
consequence, I had to change the mapping files (for Castor) as well as 
some code to get these files to be written out properly.  However, I 
cannot guarantee that they are compatible with files being written by 
2.1.6 and previous releases.  Therefore, I am somewhat concerned about 
checking this into the 2.1 branch on the off chance that the files are 
being used by someone for some purpose, although I can't imagine for what.

Ralph


avera.pss@unionfenosa.es wrote:

>Hi, I need help with Portal Engine. I have two problems with JSR-168
>portlets.
>
>--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>1. I'm trying to use the RequestDispatcher  from JSR-168 portlets using the
>code below:
>
>   PortletRequestDispatcher rd =
>getPortletContext().getRequestDispatcher("/WEB-INF/page.htm");
>   try {
>            rd.include(request, response);
>   } catch (PortletException pe) {}
>
>But I always get the following error message:
>
>   ERROR   (2004-11-09) 12:58.07:864   [portal]
>(/webapp/samples/blocks/portal/portal) http-8080-Processor24/LoggerImpl:
>PortletInvokerImpl.action() - Unable to find RequestDispatcher.
>
>Anybody knows why it doesn't work? Thanks in advance.
>
>--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>2. I canĀ“t update programmatically a JSR-168 portlet preference using code
>like this:
>
>   PortletPreferences PP = request.getPreferences();
>   try {
>            PP.setValue("preference","value");
>            PP.store();
>   } catch(ReadOnlyException roe) {} catch(ValidatorException ve) {}
>
>It seems to be a problem with the preferences validator, because I always
>get this message:
>
>ERROR   (2004-11-09) 13:17.47:030   [portal]
>(/webapp/samples/blocks/portal/portal)
>http-8080-Processor23/PortletPortalManager: Error during processing of
>portlet action.
>java.lang.IllegalStateException: Portlet class loader not yet available to
>load preferences validator.
>      at
>org.apache.cocoon.portal.pluto.om.common.PreferenceSetImpl.getPreferencesValidator(PreferenceSetImpl.java:59)
>      at
>org.apache.pluto.core.impl.PortletPreferencesImpl.store(PortletPreferencesImpl.java:291)
>      at
>com.soluzionasf.definete.portlet.TestPortlet.processAction(TestPortlet.java:150)
>      at
>org.apache.cocoon.portal.pluto.factory.LocalPortletInvokerImpl.action(LocalPortletInvokerImpl.java:129)
>      at
>org.apache.pluto.PortletContainerImpl.processPortletAction(PortletContainerImpl.java:152)
>      at
>org.apache.cocoon.portal.impl.PortletPortalManager.process(PortletPortalManager.java:215)
>      at
>org.apache.cocoon.portal.generation.PortalGenerator.generate(PortalGenerator.java:58)
>      at
>org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.processXMLPipeline(AbstractProcessingPipeline.java:545)
>      at
>org.apache.cocoon.components.pipeline.impl.AbstractCachingProcessingPipeline.processXMLPipeline(AbstractCachingProcessingPipeline.java:173)
>      at
>org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.process(AbstractProcessingPipeline.java:490)
>      at
>org.apache.cocoon.components.treeprocessor.sitemap.SerializeNode.invoke(SerializeNode.java:120)
>      at
>org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:49)
>      at
>org.apache.cocoon.components.treeprocessor.sitemap.ActTypeNode.invoke(ActTypeNode.java:138)
>      at
>org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:49)
>      at
>org.apache.cocoon.components.treeprocessor.sitemap.PreparableMatchNode.invoke(PreparableMatchNode.java:130)
>      at
>org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:72)
>      at
>org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:126)
>      at
>org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:72)
>      at
>org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:101)
>      at
>org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:336)
>      at
>org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:277)
>      at
>org.apache.cocoon.components.treeprocessor.sitemap.MountNode.invoke(MountNode.java:103)
>      at
>org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:49)
>      at
>org.apache.cocoon.components.treeprocessor.sitemap.PreparableMatchNode.invoke(PreparableMatchNode.java:130)
>      at
>org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:72)
>      at
>org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:126)
>      at
>org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:72)
>      at
>org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:101)
>      at
>org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:336)
>      at
>org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:277)
>      at
>org.apache.cocoon.components.treeprocessor.sitemap.MountNode.invoke(MountNode.java:103)
>      at
>org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:49)
>      at
>org.apache.cocoon.components.treeprocessor.sitemap.PreparableMatchNode.invoke(PreparableMatchNode.java:130)
>      at
>org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:72)
>      at
>org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:126)
>      at
>org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:72)
>      at
>org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:101)
>      at
>org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:336)
>      at
>org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:277)
>      at
>org.apache.cocoon.components.treeprocessor.sitemap.MountNode.invoke(MountNode.java:103)
>      at
>org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:49)
>      at
>org.apache.cocoon.components.treeprocessor.sitemap.PreparableMatchNode.invoke(PreparableMatchNode.java:130)
>      at
>org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:72)
>      at
>org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:126)
>      at
>org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:72)
>      at
>org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:101)
>      at
>org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:336)
>      at
>org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:277)
>      at org.apache.cocoon.Cocoon.process(Cocoon.java:639)
>      at
>org.apache.cocoon.servlet.CocoonServlet.service(CocoonServlet.java:1098)
>      at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>      at
>org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
>      at
>org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
>      at
>org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
>      at
>org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
>      at
>org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
>      at
>org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
>      at
>org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
>      at
>org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
>      at
>org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
>      at
>org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
>      at
>org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
>      at
>org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
>      at
>org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
>      at
>org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
>      at
>org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>      at
>org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
>      at
>org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
>      at
>org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
>      at
>org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
>      at
>org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
>      at
>org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
>      at
>org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
>      at
>org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
>      at java.lang.Thread.run(Thread.java:534)
>
>Anybody knows anything? Everything would help. Thanks.
>--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>Antonio Vera.
>
>
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: users-unsubscribe@cocoon.apache.org
>For additional commands, e-mail: users-help@cocoon.apache.org
>
>  
>


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@cocoon.apache.org
For additional commands, e-mail: users-help@cocoon.apache.org


Mime
View raw message