Hello Everyone,
I am a newbie to tomcat. I had deployed a war file in tomcat. When i
start tomcat i get the following errors. To give you more details. I am
using gridsphere portlet container. I am deploying a portlet in
gridsphere using tomcat. Please look below for error details.
I guess the problem is with web.xml. I had also attached web.xml,
portlet.xml, layout.xml in the bottom.
Thanks
Deepan Chakravarthy N
www.codeshepherd.com
Caused by:
javax.servlet.ServletException: Wrapper cannot find servlet class
org.gridlab.gridsphere.provider.portlet.jsr.PortletServlet or a class it
depends on
at
org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1042)
at
org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:757)
at
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:641)
at
org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:539)
at
org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:499)
at
org.gridlab.gridsphere.portletcontainer.impl.SportletDispatcher.include(SportletDispatcher.java:287)
at
org.gridlab.gridsphere.portletcontainer.impl.SportletDispatcher.init(SportletDispatcher.java:72)
at
org.gridlab.gridsphere.portletcontainer.PortletInvoker.initPortletWebApp(PortletInvoker.java:385)
at
org.gridlab.gridsphere.services.core.registry.impl.PortletManager.initPortletWebApplication(PortletManager.java:275)
at
org.gridlab.gridsphere.services.core.registry.impl.PortletManager.initAllPortletWebApplications(PortletManager.java:258)
at
org.gridlab.gridsphere.filters.GridSphereFilter.doFilter(GridSphereFilter.java:67)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
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.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: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
---------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------------
portlet.xml
<?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">
<portlet>
<!-- place portlet description here -->
<description xml:lang="en">The Classic Hello World
example</description>
<!-- place unique portlet name here -->
<portlet-name>HelloPortlet</portlet-name>
<display-name xml:lang="en">Hello World</display-name>
<!-- place your portlet class name here -->
<portlet-class>org.gridsphere.gsexample.portlets.HelloWorld</portlet-class>
<expiration-cache>60</expiration-cache>
<!-- place supported modes here -->
<supports>
<mime-type>text/html</mime-type>
<portlet-mode>edit</portlet-mode>
<portlet-mode>help</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>
<!-- place portlet preferences here -->
</portlet>
<custom-portlet-mode>
<description xml:lang="en">Pre-defined custom portlet mode
CONFIGURE</description>
<portlet-mode>CONFIGURE</portlet-mode>
</custom-portlet-mode>
<user-attribute>
<description xml:lang="en">User Name</description>
<name>user.name</name>
</user-attribute>
<user-attribute>
<description xml:lang="en">User Id</description>
<name>user.id</name>
</user-attribute>
<user-attribute>
<description xml:lang="en">User Full Name</description>
<name>user.name.full</name>
</user-attribute>
<user-attribute>
<description xml:lang="en">User E-Mail</description>
<name>user.email</name>
</user-attribute>
<user-attribute>
<description xml:lang="en">Company Organization</description>
<name>user.organization</name>
</user-attribute>
<user-attribute>
<description xml:lang="en">Last Login Time</description>
<name>user.lastlogintime</name>
</user-attribute>
<user-attribute>
<description xml:lang="en">Timezone</description>
<name>user.timezone</name>
</user-attribute>
<user-attribute>
<description xml:lang="en">Preferred Locale</description>
<name>user.locale</name>
</user-attribute>
<user-attribute>
<description xml:lang="en">Preferred Theme</description>
<name>user.theme</name>
</user-attribute>
<!--
<security-constraint>
<portlet-collection>
<portlet-name>TimeZoneClock</portlet-name>
</portlet-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
-->
--------------------------------------------------------------------------------------
web.xml
<?xml version="1.0" encoding="ISO-8859-1"?>
<!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>GridSphere Examples</display-name>
<description>
Provides GridSphere Examples
</description>
<context-param>
<!-- preferred repository selector. "preferred" because
if one is already installed, this choice is ignored. -->
<param-name>log4j-selector</param-name>
<param-value>org.apache.log4j.selector.ContextJNDISelector</param-value>
</context-param>
<context-param>
<!-- relative path to config file within current webapp -->
<param-name>log4j-config</param-name>
<param-value>WEB-INF/classes/log4j.properties</param-value>
</context-param>
<!-- uncomment only if using in non-GridSphere container
<listener>
<listener-class>org.gridlab.gridsphere.provider.portlet.jsr.PortletServlet</listener-class>
</listener>
-->
<servlet>
<servlet-name>PortletServlet</servlet-name>
<servlet-class>org.gridlab.gridsphere.provider.portlet.jsr.PortletServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>PortletServlet</servlet-name>
<url-pattern>/jsr/gsexamples</url-pattern>
</servlet-mapping>
<mime-mapping>
<extension>wbmp</extension>
<mime-type>image/vnd.wap.wbmp</mime-type>
</mime-mapping>
<mime-mapping>
<extension>wml</extension>
<mime-type>text/vnd.wap.wml</mime-type>
</mime-mapping>
<mime-mapping>
<extension>wmls</extension>
<mime-type>text/vnd.wap.wmlscript</mime-type>
</mime-mapping>
<env-entry>
<description>JNDI logging context for this app</description>
<env-entry-name>log4j/logging-context</env-entry-name>
<env-entry-value>gsexamples</env-entry-value>
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>
</web-app>
----------------------------------------------------------------------------------------------------------
group.xml
<?xml version="1.0" encoding="UTF-8"?>
<!--
Sample group layout
$Id: group.sample.xml.tpl 4496 2006-02-08 20:27:04Z wehrens $
-->
<portlet-group>
<group-name>Hello</group-name>
<group-description>An Example group</group-description>
<group-visibility>PUBLIC</group-visibility>
<portlet-role-info>
<portlet-class>gsexamples#HelloPortlet</portlet-class>
<required-role>USER</required-role>
</portlet-role-info>
</portlet-group>
-----------------------------------------------------------------------------------------------
layout.xml
<portlet-tabbed-pane>
<portlet-tab label="GridSphere Examples">
<title lang="en">GridSphere Examples</title>
<portlet-tabbed-pane style="sub-menu">
<portlet-tab label="helloworld">
<title lang="en">Hello</title>
<table-layout>
<row-layout>
<column-layout width="100%">
<portlet-frame label="helloportlet">
<portlet-class>
gsexamples#HelloPortlet
</portlet-class>
</portlet-frame>
</column-layout>
</row-layout>
</table-layout>
</portlet-tab>
</portlet-tabbed-pane>
</portlet-tab>
</portlet-tabbed-pane>
--------------------------------------------------------------------
HelloWorld.java
package org.gridsphere.gsexamples.portlets;
import javax.portlet.GenericPortlet;
import javax.portlet.RenderRequest;
import javax.portlet.RenderResponse;
import javax.portlet.PortletException;
import java.io.PrintWriter;
import java.io.IOException;
/*
* A simple HelloWorld Portlet
*/
public class HelloWorld extends GenericPortlet
{
public void doView(RenderRequest request, RenderResponse
response) throws PortletException, IOException
{
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<h1>Hello World</h1>");
}
}
---------------------------------------------------------------------
To start a new topic, e-mail: [email protected]
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]