Hi Min

I'm a beginner too and here's what I've found so far:
- Pluto is not a portal. It's just a portlet container -> don't use
pluto directly. Instead, use a real portal
- If you want to use pluto directly, build the 1.1 version from
source. The directions are here:
http://portals.apache.org/pluto/getting-started.html (use tomcat-5.5.9
http://portals.apache.org/pluto/app-servers.html)

I was able to deploy a portlet of my own to the container (I added it
to the testsuite, the portlet has its own context within tomcat). but
I'm getting a nullpointer in PortletWindowImpl because the config
attribute is null. So I give up and now I'm looking at jetspeed2.

HTH
Patrick


2005/11/8, [EMAIL PROTECTED] <[EMAIL PROTECTED]>:
>
>
> I am a beginner of portlets. I tried a very very simple HelloWorld portlet (
> the source from onjava.com) like this:
>
> package com.test;
>
> import javax.portlet.*;
>
> import java.io.IOException;
>
> public class HelloWorld extends GenericPortlet{
>
>  protected void doView(RenderRequest request, RenderResponse response)
>   throws PortletException, IOException{
>    response.setContentType("text/html");
>    response.getWriter().println("Hello Portlet");
>   }
>
> }
>
> portlet.xml file :
>
> <?xml version="1.0" encoding="UTF-8"?>
> <portlet-app
>
> xmlns="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd";
>     version="1.0"
>     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
>
> xsi:schemaLocation="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd
>
> http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd";>
>
>    <portlet-app-name>HelloWold</portlet-app-name>
>
>  <portlet>
>         <description>HelloWorldDescription</description>
>
>         <portlet-name>HelloWorld</portlet-name>
>
>         <display-name>Hello World</display-name>
>
>         <portlet-class>com.test.HelloWorld</portlet-class>
>
>         <expiration-cache>-1</expiration-cache>
>
>         <supports>
>    <mime-type>text/html</mime-type>
>             <portlet-mode>VIEW</portlet-mode>
>    </supports>
>
>         <supported-locale>en</supported-locale>
>
>   <portlet-info>
>    <title>Hello World</title>
>    <short-title>Hello World</short-title>
>    <keywords>Hello</keywords>
>         </portlet-info>
>  </portlet>
> </portlet-app>
>
> web.xml is:
>
> <?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>HelloWorld</display-name>
>     <welcome-file-list>
>      <welcome-file>index.jsp</welcome-file>
>     </welcome-file-list>
> </web-app>
>
> I installed the Pluto-1.0.1, the deployment from the admin is successful.
> But if I'd like to open the HelloWorld portlet, it says always 'error
> occured in portlet'. I checked the log file, it shows sth like this:
>
> 08.11.2005 10:09:26
> org.apache.pluto.portalImpl.services.log.LoggerImpl error
> SCHWERWIEGEND: PortletInvokerImpl.render() - Error while dispatching
> portlet.
> java.lang.ClassCastException: com.test.HelloWorld
>  at
> org.apache.pluto.core.PortletServlet.init(PortletServlet.java:66)
>  at
> org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1091)
>  at
> org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:750)
>  at
> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:641)
>  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.load(PortletInvokerImpl.java:80)
>  at
> org.apache.pluto.PortletContainerImpl.portletLoad(PortletContainerImpl.java:218)
>  at
> org.apache.pluto.portalImpl.core.PortletContainerWrapperImpl.portletLoad(PortletContainerWrapperImpl.java:94)
>  at
> org.apache.pluto.portalImpl.aggregation.PortletFragment.service(PortletFragment.java:120)
>  at
> org.apache.jsp.WEB_002dINF.aggregation.ColumnFragment_jsp._jspService(org.apache.jsp.WEB_002dINF.aggregation.ColumnFragment_jsp:65)
>  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.pluto.portalImpl.aggregation.AbstractFragment.service(AbstractFragment.java:112)
>  at
> org.apache.jsp.WEB_002dINF.aggregation.RowFragment_jsp._jspService(org.apache.jsp.WEB_002dINF.aggregation.RowFragment_jsp:65)
>  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.pluto.portalImpl.aggregation.AbstractFragment.service(AbstractFragment.java:112)
>  at
> org.apache.jsp.WEB_002dINF.aggregation.PageFragment_jsp._jspService(org.apache.jsp.WEB_002dINF.aggregation.PageFragment_jsp:74)
>  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.pluto.portalImpl.aggregation.AbstractFragment.service(AbstractFragment.java:112)
>  at
> org.apache.jsp.WEB_002dINF.aggregation.RootFragment_jsp._jspService(org.apache.jsp.WEB_002dINF.aggregation.RootFragment_jsp:136)
>  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.pluto.portalImpl.aggregation.AbstractFragment.service(AbstractFragment.java:112)
>  at
> org.apache.pluto.portalImpl.Servlet.doGet(Servlet.java:254)
>  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:407)
>  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)
> 08.11.2005 10:09:26
> org.apache.pluto.portalImpl.services.log.LoggerImpl error
> SCHWERWIEGEND: Error in Portlet
> javax.portlet.PortletException
>  at
> org.apache.pluto.invoker.impl.PortletInvokerImpl.invoke(PortletInvokerImpl.java:146)
>  at
> org.apache.pluto.invoker.impl.PortletInvokerImpl.load(PortletInvokerImpl.java:80)
>  at
> org.apache.pluto.PortletContainerImpl.portletLoad(PortletContainerImpl.java:218)
>  at
> org.apache.pluto.portalImpl.core.PortletContainerWrapperImpl.portletLoad(PortletContainerWrapperImpl.java:94)
>  at
> org.apache.pluto.portalImpl.aggregation.PortletFragment.service(PortletFragment.java:120)
>  at
> org.apache.jsp.WEB_002dINF.aggregation.ColumnFragment_jsp._jspService(org.apache.jsp.WEB_002dINF.aggregation.ColumnFragment_jsp:65)
>  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.pluto.portalImpl.aggregation.AbstractFragment.service(AbstractFragment.java:112)
>  at
> org.apache.jsp.WEB_002dINF.aggregation.RowFragment_jsp._jspService(org.apache.jsp.WEB_002dINF.aggregation.RowFragment_jsp:65)
>  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.pluto.portalImpl.aggregation.AbstractFragment.service(AbstractFragment.java:112)
>  at
> org.apache.jsp.WEB_002dINF.aggregation.PageFragment_jsp._jspService(org.apache.jsp.WEB_002dINF.aggregation.PageFragment_jsp:74)
>  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.pluto.portalImpl.aggregation.AbstractFragment.service(AbstractFragment.java:112)
>  at
> org.apache.jsp.WEB_002dINF.aggregation.RootFragment_jsp._jspService(org.apache.jsp.WEB_002dINF.aggregation.RootFragment_jsp:136)
>  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.pluto.portalImpl.aggregation.AbstractFragment.service(AbstractFragment.java:112)
>  at
> org.apache.pluto.portalImpl.Servlet.doGet(Servlet.java:254)
>  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:407)
>  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)
> Caused by: java.lang.ClassCastException: com.test.HelloWorld
>  at
> org.apache.pluto.core.PortletServlet.init(PortletServlet.java:66)
>  at
> org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1091)
>  at
> org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:750)
>  at
> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:641)
>  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)
>  ... 74 more
> ...
>
> Could somebody help me?  Please!!! I am going to getting crazy. Thank you!
>
> regards, Min


--
"I love deadlines. I like the whooshing sound they make as they fly
by." -- Douglas Adams

Reply via email to