Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

mapping paths to servlets doesn't work anymore in SP5 ??

1 view
Skip to first unread message

Olaf Klischat

unread,
Aug 26, 2000, 3:00:00 AM8/26/00
to
Hello,

see subject.

I have a small web application which is contained in a WAR-file named
"httpdump.war". Its deployment descriptor (web.xml) maps the servlet
httpdump.HttpDumpServlet to the path /servletpath/* with the following
XML statements:


<servlet>
<servlet-name>HttpDumpServlet</servlet-name>
<display-name>The HTTP Dump Servlet</display-name>
<servlet-class>httpdump.HttpDumpServlet</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>HttpDumpServlet</servlet-name>
<url-pattern>/servletpath/*</url-pattern>
</servlet-mapping>


In weblogic.properties, I have:

weblogic.httpd.webApp.httpdump=httpdump.war


The WAR-file is structured as follows:

$ jar tf httpdump.war
META-INF/
META-INF/MANIFEST.MF
WEB-INF/classes/httpdump/HttpDumpServlet.class
WEB-INF/web.xml
dummy.jsp
$


Now a request like http://host:port/httpdump/servletpath/xyz should be
directed to my servlet, right?

This works flawlessly in WLS 5.1 SP 3. With SP 5, I get the following:

Sat Aug 26 15:58:54 CEST 2000:<E> <WebAppServletContext-httpdump> Error loading servlet: httpdump.HttpDumpServlet
java.lang.ClassNotFoundException: httpdump.HttpDumpServlet
at weblogic.boot.ServerClassLoader.findLocalClass(ServerClassLoader.java:355)
at weblogic.boot.ServerClassLoader.loadClass(ServerClassLoader.java:111)
at java.lang.ClassLoader.loadClass(ClassLoader.java:243)
at weblogic.utils.classloaders.GenericClassLoader.parentLoadClass(GenericClassLoader.java:503)
at weblogic.utils.classloaders.GenericClassLoader.reallyLoadClass(GenericClassLoader.java:366)
at weblogic.utils.classloaders.GenericClassLoader.loadClass(GenericClassLoader.java:182)
at weblogic.utils.classloaders.GenericClassLoader.loadClass(GenericClassLoader.java:156)
at weblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubImpl.java:371)
at weblogic.servlet.internal.ServletStubImpl.getServlet(ServletStubImpl.java:187)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:118)
at weblogic.servlet.internal.ServletContextImpl.invokeServlet(ServletContextImpl.java:760)
at weblogic.servlet.internal.ServletContextImpl.invokeServlet(ServletContextImpl.java:707)
at weblogic.servlet.internal.ServletContextManager.invokeServlet(ServletContextManager.java:251)
at weblogic.socket.MuxableSocketHTTP.invokeServlet(MuxableSocketHTTP.java:369)
at weblogic.socket.MuxableSocketHTTP.execute(MuxableSocketHTTP.java:269)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:135)

Sat Aug 26 15:58:54 CEST 2000:<E> <WebAppServletContext-httpdump> Servlet failed with ServletException
javax.servlet.ServletException: Servlet class: httpdump.HttpDumpServlet could not be loaded - the requested class wasn't found in the classpath

at weblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubImpl.java:379)
at weblogic.servlet.internal.ServletStubImpl.getServlet(ServletStubImpl.java:187)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:118)
at weblogic.servlet.internal.ServletContextImpl.invokeServlet(ServletContextImpl.java:760)
at weblogic.servlet.internal.ServletContextImpl.invokeServlet(ServletContextImpl.java:707)
at weblogic.servlet.internal.ServletContextManager.invokeServlet(ServletContextManager.java:251)
at weblogic.socket.MuxableSocketHTTP.invokeServlet(MuxableSocketHTTP.java:369)
at weblogic.socket.MuxableSocketHTTP.execute(MuxableSocketHTTP.java:269)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:135)


So, it seems the WLS has interpreted the <servlet-mapping> tag in the
DD correctly, but is then looking for the servlet class in the wrong
places..?

My system configuration:

$ java weblogic.Admin t3://localhost:7001 VERSION
WebLogic Build: 5.1.0 Service Pack 5 08/17/2000 07:21:55 #79895

$ uname -a
Linux localhost.localdomain 2.2.14 #1 Wed Aug 16 01:57:42 CEST 2000 i686 unknown

$ java -version
java version "1.2.2"
Classic VM (build 1.2.2-L, green threads, nojit)
$

Any hints?

Thanks,
Olaf
--
Olaf Klischat | TU Berlin computer science
Oberfeldstrasse 132 |
12683 Berlin, Germany |
phone: +49 30 54986231 | eMail: klis...@cs.tu-berlin.de

Kumar Allamraju

unread,
Aug 26, 2000, 3:00:00 AM8/26/00
to
Yes, this is already a known problem in SP5.
Fix will be available in the upcoming service packs.
I guess the workaround is to put servlet classes in servlet classpath.

Sorry about the regression.

--
Kumar

Daniel Hoppe

unread,
Aug 30, 2000, 3:00:00 AM8/30/00
to
Hi,

we jared our servlets up and placed them in /WEB-INF/lib/....jar. The
mapping is working without any problems.

Daniel Hoppe

0 new messages