javax.servlet.ServletException: Error instantiating servlet class view
javax.servlet.ServletException: Error instantiating servlet class view
I have first time coded jdbc application using javabeans. Login page authentication works successfulyy but I want to retrieve the data and its not working.
So error must be in view.jsp or view.java page..
can any one please see it!!
Hereby I've attached the code...
view.java
view plaincopy to clipboardprint?
Note: Text content in the code blocks is automatically word-wrapped
package bean;
import static bean.Provider.CONNECTION_URL;
import static bean.Provider.DRIVER;
import static bean.Provider.PASSWORD;
import static bean.Provider.USERNAME;
import java.sql.*;
import java.util.*;
public class view {
String error;
List<Object> allData=new ArrayList<Object>();
public String name,clas;
public int rollno,mono;
static Connection con=null;
Object obj=new Object();
public void setObj(Object obj) {
this.obj = obj;
}
public String getError() {
return error;
}
public List getDb_Data()
{
int i=0;
try
{
try{
Class.forName(DRIVER);
con=DriverManager.getConnection(CONNECTION_URL,USERNAME,PASSWORD);
}
catch(Exception e){
System.out.println("Error occurred " +e);
}
String qry;
Connection con=ConnectionProvider.getCon();
Statement s = con.createStatement();
qry="Select name,rollno,clas,mono from student";
ResultSet r=s.executeQuery(qry);
while(r.next())
{
DataFields d=new DataFields(r.getString(1), r.getInt(2), r.getString(3), r.getInt(4));
allData.add(i,d);
i++;
}
}
catch(Exception ex)
{
error="<b>Contact Administrator :</b><br/>" + ex;
System.out.println("Your query is not working" + ex);
}
return allData;
}
public String getName()
{
this.name=((DataFields)obj).name;
return this.name;
}
public int getRollno() {
this.rollno=((DataFields)obj).rollno;
return this.rollno;
}
public String getClas() {
this.clas=((DataFields)obj).clas;
return this.clas;
}
public int getMono() {
this.mono=((DataFields)obj).mono;
return this.mono;
}
public class DataFields
{
public String name,clas;
public int rollno,mono;
public DataFields(String name,int rollno,String clas,int mono)
{
this.name=name;
this.rollno=rollno;
this.clas=clas;
this.mono=mono;
}
}
}
package bean;
import static bean.Provider.CONNECTION_URL;
import static bean.Provider.DRIVER;
import static bean.Provider.PASSWORD;
import static bean.Provider.USERNAME;
import java.sql.*;
import java.util.*;
public class view {
String error;
List<Object> allData=new ArrayList<Object>();
public String name,clas;
public int rollno,mono;
static Connection con=null;
Object obj=new Object();
public void setObj(Object obj) {
this.obj = obj;
}
public String getError() {
return error;
}
public List getDb_Data()
{
int i=0;
try
{
try{
Class.forName(DRIVER);
con=DriverManager.getConnection(CONNECTION_URL,USERNAME,PASSWORD);
}
catch(Exception e){
System.out.println("Error occurred " +e);
}
String qry;
Connection con=ConnectionProvider.getCon();
Statement s = con.createStatement();
qry="Select name,rollno,clas,mono from student";
ResultSet r=s.executeQuery(qry);
while(r.next())
{
DataFields d=new DataFields(r.getString(1), r.getInt(2), r.getString(3), r.getInt(4));
allData.add(i,d);
i++;
}
}
catch(Exception ex)
{
error="<b>Contact Administrator :</b><br/>" + ex;
System.out.println("Your query is not working" + ex);
}
return allData;
}
public String getName()
{
this.name=((DataFields)obj).name;
return this.name;
}
public int getRollno() {
this.rollno=((DataFields)obj).rollno;
return this.rollno;
}
public String getClas() {
this.clas=((DataFields)obj).clas;
return this.clas;
}
public int getMono() {
this.mono=((DataFields)obj).mono;
return this.mono;
}
public class DataFields
{
public String name,clas;
public int rollno,mono;
public DataFields(String name,int rollno,String clas,int mono)
{
this.name=name;
this.rollno=rollno;
this.clas=clas;
this.mono=mono;
}
}
}
view.jsp
view plaincopy to clipboardprint?
Note: Text content in the code blocks is automatically word-wrapped
<%@ page language="java" import="java.util.*" %>
<jsp:useBean id="view" class="bean.view" scope="application" />
<jsp:setProperty property="*" name="obj"/>
<table width="900" cellspacing="0" cellpadding="0">
<tr>
<td>Name</td>
<td>Roll Number</td>
<td>Class</td>
<td>Mobile Number</td>
</tr>
<%
List<Object> list=new ArrayList<Object>();
list=view.getDb_Data();
for(int i=0;i<list.size();i++) {
view.setObj(list.get(i));
%>
<tr>
<td><% out.print(view.getName()); %></td>
<td><% out.print(view.getRollno()); %></td>
<td><% out.print(view.getClas()); %></td>
<td><% out.print(view.getMono()); %></td>
</tr>
<% } %>
</table>
<%@ page language="java" import="java.util.*" %>
<jsp:useBean id="view" class="bean.view" scope="application" />
<jsp:setProperty property="*" name="obj"/>
<table width="900" cellspacing="0" cellpadding="0">
<tr>
<td>Name</td>
<td>Roll Number</td>
<td>Class</td>
<td>Mobile Number</td>
</tr>
<%
List<Object> list=new ArrayList<Object>();
list=view.getDb_Data();
for(int i=0;i<list.size();i++) {
view.setObj(list.get(i));
%>
<tr>
<td><% out.print(view.getName()); %></td>
<td><% out.print(view.getRollno()); %></td>
<td><% out.print(view.getClas()); %></td>
<td><% out.print(view.getMono()); %></td>
</tr>
<% } %>
</table>
and error is,
view plaincopy to clipboardprint?
Note: Text content in the code blocks is automatically word-wrapped
HTTP Status 500 - Error instantiating servlet class view
--------------------------------------------------------------------------------
type Exception report
message Error instantiating servlet class view
description The server encountered an internal error that prevented it from fulfilling this request.
exception
javax.servlet.ServletException: Error instantiating servlet class view
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:947)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1009)
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)
root cause
java.lang.ClassNotFoundException: view
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1713)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1558)
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:947)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1009)
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)
note The full stack trace of the root cause is available in the Apache Tomcat/7.0.39 logs.
--------------------------------------------------------------------------------
Apache Tomcat/7.0.39
HTTP Status 500 - Error instantiating servlet class view
--------------------------------------------------------------------------------
type Exception report
message Error instantiating servlet class view
description The server encountered an internal error that prevented it from fulfilling this request.
exception
javax.servlet.ServletException: Error instantiating servlet class view
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:947)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1009)
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)
root cause
java.lang.ClassNotFoundException: view
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1713)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1558)
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:947)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1009)
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)
note The full stack trace of the root cause is available in the Apache Tomcat/7.0.39 logs.
--------------------------------------------------------------------------------
Apache Tomcat/7.0.39
web.xml
view plaincopy to clipboardprint?
Note: Text content in the code blocks is automatically word-wrapped
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
<display-name>logindevelopement</display-name>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>DataInsertTable</servlet-name>
<servlet-class>DataInsertTable</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>DataInsertTable</servlet-name>
<url-pattern>/DataInsertTable</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>view</servlet-name>
<servlet-class>view</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>view</servlet-name>
<url-pattern>/view</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>bean.view</servlet-name>
<servlet-class>bean.view</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>bean.view</servlet-name>
<url-pattern>/bean.view</url-pattern>
</servlet-mapping>
</web-app>
I see two problems with that:
1) servlet-class "view" cannot be found. That's what your exception is explicitly telling you.
2) servlet-class "bean.view" is not a servlet. You can't make something a servlet just by putting it as a servlet in web.xml. It must implement Servlet, often by extending HttpServlet.