I'm guessing that you're having class loader issues. The portlet request which is being dispatched to process your request is not being correctly cast into the RenderRequestImpl which is needed. This can happen if you have two version of the pluto container jar in your classpath.

The only version should be the one in common/lib. Can you make sure that there's not another version either in the pluto portal war, the testsuite war, or another classloader path.

Thanks,


David

Isaac Clerencia wrote:
On Monday 02 October 2006 13:23, David H. DeWolf wrote:
Could you please provide the rest of the stack trace.
Error rendering portlet.

java.lang.ClassCastException: org.apache.pluto.internal.impl.RenderRequestImpl
        at 
org.apache.pluto.core.PortletServlet.dispatch(PortletServlet.java:192)
        at org.apache.pluto.core.PortletServlet.doGet(PortletServlet.java:139)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
        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 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.core.PortletInvoker.invoke(PortletInvoker.java:169)
        at org.apache.pluto.core.PortletInvoker.render(PortletInvoker.java:111)
at org.apache.pluto.core.PortletContainerImpl.doRender(PortletContainerImpl.java:158)
        at 
org.apache.pluto.driver.tags.PortletTag.doStartTag(PortletTag.java:153)
at org.apache.jsp.WEB_002dINF.themes.portlet_002dskin_jsp._jspx_meth_pluto_portlet_0
(org.apache.jsp.WEB_002dINF.themes.portlet_002dskin_jsp:98)
at org.apache.jsp.WEB_002dINF.themes.portlet_002dskin_jsp._jspService(org.apache.jsp.WEB_002dINF.themes.portlet_002dskin_jsp:73)
        at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
        at 
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
        at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
        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 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.jasper.runtime.JspRuntimeLibrary.include(JspRuntimeLibrary.java:966) at org.apache.jsp.WEB_002dINF.themes.pluto_002ddefault_002dtheme_jsp._jspx_meth_c_forEach_1
(org.apache.jsp.WEB_002dINF.themes.pluto_002ddefault_002dtheme_jsp:468)
at org.apache.jsp.WEB_002dINF.themes.pluto_002ddefault_002dtheme_jsp._jspService(org.apache.jsp.WEB_002dINF.themes.pluto_002ddefault_002dtheme_jsp:128)
        at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
        at 
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
        at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
        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 org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672) at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:463) at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:398) at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301) at org.apache.pluto.driver.PortalDriverServlet.doGet(PortalDriverServlet.java:127)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
        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 org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482) 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:856)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744) 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:595)

Also, did you either manually update the web.xml of the portlet app or
run it through the assembler?
This is the content of the web.xml (I copied it from portlet testsuite):
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app
    PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
    "http://java.sun.com/dtd/web-app_2_3.dtd";>
<web-app>
        <display-name>HTMLContentViewerPortlet</display-name>
        <servlet>
        <servlet-name>contentviewer</servlet-name>
        <display-name>Content Viewer</display-name>
        <description>Automated generated Portlet Wrapper</description>
        <servlet-class>org.apache.pluto.core.PortletServlet</servlet-class>
        <init-param>
            <param-name>portlet-name</param-name>
            <param-value>HTMLContentViewerPortlet</param-value>
        </init-param>
       <load-on-startup>1</load-on-startup>
    </servlet>
<servlet-mapping>
                        <servlet-name>contentviewer</servlet-name>
                        
<url-pattern>/PlutoInvoker/HTMLContentViewerPortlet</url-pattern>
        </servlet-mapping>
</web-app>

And this is the tomcat output:
[DEBUG] PortalURLParser - Parsing URL: /pluto/portal/HTML%20Viewer
[DEBUG] PortalURLParser - Parsing request pathInfo: /HTML Viewer
[DEBUG] PortalDriverServlet - Processing render request.
[DEBUG] PortalDriverServlet - Rendering Portal: Requested Page: HTML Viewer
[DEBUG] PortalDriverServlet - Dispatching to: /WEB-INF/themes/pluto-default-theme.jsp [DEBUG] PortletTag - Evaluated portletId to: /HTMLContentViewerPortlet.HTMLContentViewerPortlet [DEBUG] PortletTag - Rendering Portlet Window: [EMAIL PROTECTED] [DEBUG] PortletContainerImpl - Portlet Container [Pluto Portal Driver]: Render request received for portlet: HTMLContentViewerPortlet [DEBUG] RenderRequestImpl - Created render request for: [EMAIL PROTECTED]
[DEBUG] PortletInvoker - Performing Render Invocation
[DEBUG] PortletInvoker - Dispatching to portlet servlet at: /PlutoInvoker/HTMLContentViewerPortlet
[DEBUG] PortalDriverServlet - Render request processed.

Best regards

Reply via email to