java.lang.NoClassDefFoundError: Login (wrong name: com/javacomponents/Login
807599Mar 21 2007 — edited Mar 22 2007Hi all, I think I've got connection pooling set up, I want to test connecting to the DB and retrieve the result of a query.
I am trying to run a query using a servlet like so:
http://localhost:8080/calendar/servlet/Login
This should be simple so can anyone see how I can fix the following servlet problem:
exception
javax.servlet.ServletException: Cannot allocate servlet instance for path /calendar/servlet/Login
org.apache.catalina.servlets.InvokerServlet.serveRequest(InvokerServlet.java:435)
org.apache.catalina.servlets.InvokerServlet.doGet(InvokerServlet.java:180)
javax.servlet.http.HttpServlet.service(HttpServlet.java:743)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
root cause
java.lang.NoClassDefFoundError: Login (wrong name: com/javacomponents/Login)
java.lang.ClassLoader.defineClass0(Native Method)
java.lang.ClassLoader.defineClass(ClassLoader.java:509)
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123)
org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1677)
org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:900)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1350)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1230)
org.apache.catalina.servlets.InvokerServlet.serveRequest(InvokerServlet.java:416)
org.apache.catalina.servlets.InvokerServlet.doGet(InvokerServlet.java:180)
javax.servlet.http.HttpServlet.service(HttpServlet.java:743)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
The Login servlet is located at:
C:\Tomcat\webapps\calendar\WEB-INF\classes
All other classes are located at:
C:\Tomcat\webapps\calendar\WEB-INF\classes\com\javacomponents
in my web.xml located at C:\Tomcat\webapps\calendar\WEB-INF I have:
<listener>
<listener-class>com.javacomponents.DBConnectionListener</listener-class>
</listener>
<!-- This component has a dependency on an external resource-->
<resource-ref>
<description>DB Connection Pooling</description>
<res-ref-name>jdbc/TestDB</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
<servlet>
<servlet-name>Login</servlet-name>
<servlet-class>Login</servlet-class>
</servlet>
Message was edited by:
MajorMahem