Re: URGENT: javax.servlet.ServletException: Wrapper cannot find servlet
dami.gupta@gmail.com wrote:
OK, I have tried some different things. I put HelloServlet.jar in the
package hello so it is now hello.HelloServlet. I do
http://localhost:8080/servlets/hello/HelloServlet
and get
The requested resource (/hello/HelloServlet) is not available.
Next, I use
jboss/catalina/webapps/servlets/helloapp and place
helloapp/META-INF
helloapp/WEB-INF/web.xml
helloapp/WEB-INF/classes/hello/HelloServlet.class
Is your app called "helloapp" or "hello"?
Paths in the WAR should be relative, that is, the app directory should not be
there.
I'm going to assume "helloapp.war" deployed to Tomcat, thus creating a
"webapps/helloapp/" directory.
and do
http://localhost:8080/servlets/hello/HelloServlet
Now I get
No Context configured to process this request
server encountered an internal error (No Context configured to process
this request) that prevented it from fulfilling this request.
Oh dear, what Can I do?
You need to deploy "helloapp.war" to Tomcat's "webapps/" directory and let
Tomcat create the "helloapp/" directory there.
Inside Tomcat's "webapps/helloapp/WEB-INF/" directory there is a file
web.xml:
--------
<web-app>
<servlet>
<servlet-name>HelloServlet</servlet-name>
<servlet-class>hello.HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloServlet</servlet-name>
<url-pattern>/HelloServlet</url-pattern>
</servlet-mapping>
</web-app>
Notice, no "/*" at the end of the servlet-mapping url-pattern.
location of servlet class within "webapps/helloapp/":
--------
WEB-INF/classes/hello/HelloServlet.class
invocation from the browser:
http://localhost:8080/helloapp/HelloServlet
Tomcat's web page has some good stuff about this.
<http://tomcat.apache.org/tomcat-5.5-doc/appdev/deployment.html>
Their docs talk about using their Deployer, which I never use.
The Sun Java EE tutorial is also good. Try
<http://java.sun.com/javaee/5/docs/tutorial/doc/WebApp4.html#wp189052>
--
Lew