Hi I am testing a HelloWorld app. Here is the HelloWorld.java package testpluto;
import javax.portlet.GenericPortlet; import javax.portlet.RenderRequest; import javax.portlet.RenderResponse; import javax.portlet.PortletException; import java.io.IOException; import javax.servlet.*; public class HelloWorld extends GenericPortlet { protected void doView(RenderRequest request, RenderResponse response) throws PortletException, IOException { response.setContentType("text/html"); response.getWriter().println("Hello Portlet"); } } I have successfully compiled this class and The path to it is WEB-INF/classes/tespluto Then I added these to the web.xml <?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 version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> <servlet> <servlet-name>HelloWorld</servlet-name> <display-name>HelloWorld Wrapper</display-name> <description>Automated generated Portlet Wrapper</description> <servlet-class>javax.portlet.GenericPortlet </servlet-class> <init-param> <param-name>portlet-name</param-name> <param-value>HelloWorld</param-value> </init-param> <!-- <load-on-startup>1</load-on-startup> --> <init-param> <param-name>portlet-class</param-name> <param-value>testpluto.HelloWorld </param-value> </init-param> <init-param> <param-name>portlet-guid</param-name> <param-value>HelloPluto.HelloWorld </param-value> </init-param> <!-- <load-on-startup>1</load-on-startup> --> </servlet> <servlet-mapping> <servlet-name>HelloWorld</servlet-name> <url-pattern>/hello/*</url-pattern> </servlet-mapping> </web-app> The WEB-INF/portlet.xml <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> <portlet-name>HelloWorld</portlet-name> <display-name>Change Case Portlet</display-name> <portlet-class>testpluto.HelloWorld</portlet-class> <supports> <mime-type>text/html</mime-type> <portlet-mode>view</portlet-mode> </supports> <portlet-info> <title>Hello World</title> </portlet-info> <init-param> <name>config</name> <value>/WEB-INF/ptest-config.xml</value> </init-param> </portlet> </portlet-app> The index.jsp <jsp:forward page="/hello"> I restarted Pluto several times and all these times when accessing http://localhost:8080/ptest/hello I get the following error in the Catalina.out 4 [http-8080-Processor25] ERROR org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/ptest].[HelloWorld] - Allocate exception for servlet HelloWorld java.lang.InstantiationException at sun.reflect.InstantiationExceptionConstructorAccessorImpl.newInstance(InstantiationExceptionConstructorAccessorImpl.java:30) at java.lang.reflect.Constructor.newInstance(Constructor.java:494) at java.lang.Class.newInstance0(Class.java:350) at java.lang.Class.newInstance(Class.java:303) at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1055) at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:757) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:130) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) at org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:392) 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:869) at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664) 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) I have been breaking my head over these for nearly 40 hours now. Sorry, I don't know maven and don't intend to know at this time. I am fine with ant. It took me a while to understand the deploy. I even tried deploying from the manager/admin screens. Still The same result. I'd appreciate all of the help you can give me in making this successful. Thanks Murthy