You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cocoon.apache.org by av...@unionfenosa.es on 2004/11/09 13:32:04 UTC

Problems with JSR-168 portlets over Portal Engine.

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


Re: Problems with JSR-168 portlets over Portal Engine.

Posted by Ralph Goers <Ra...@dslextreme.com>.
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


Re: Problems with JSR-168 portlets over Portal Engine.

Posted by Ralph Goers <Ra...@dslextreme.com>.
Are your portlets installed within the Cocoon webapp or in a separate webapp?

I don't believe JSR 168 portlet preferences work in Cocoon yet. The code
to do the store is an empty method.  I'm actually surprised you made it
that far. Last time I tried I discovered that a class loader hadn't been
set up. I've got a fix for that coming shortly.

I'm in the process of trying to go through this and fix whatever isn't
quite working so I will try to test these two scenarios.

Ralph


avera.pss@unionfenosa.es said:
>
> 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


Re: Problems with JSR-168 portlets over Portal Engine.

Posted by Ralph Goers <Ra...@dslextreme.com>.
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.
>  
>
This issue is fixed. I believe it was fixed by a patch I did that is in 
2.1.6. However, there was a problem invoking JSPs in local portlets. You 
would experience a NullPointerException trying to set up tag libraries. 
I have committed the fix for that in the SVN repository.

Ralph


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