Error allocating a servlet instance

antonio
10 de Enero del 2005
Este error me genera el tomcat; estoy haciendo una migracion de la plataforma Unix con el contenedor iPlanet, base de datos SyBASE y ahora debe de estar en Mac OS X, con mysql y el contenedor es tomcat; he logrado hacer la conexion de la base de datos en la migracion con un pequeño servlet que hice, pero con los codigos nuevos no he podido establecer la comunicacion estoy desesperado por que no he logrado la conexion de la bases de datos mostrare el listado del error que arroja tomcat

exception

javax.servlet.ServletException: Error allocating a servlet instance
at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:625)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:163)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:144)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2358)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:133)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:118)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:116)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:127)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:152)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
at java.lang.Thread.run(Thread.java:552)


root cause

java.lang.NoClassDefFoundError: ServletVerifyPsswd (wrong name: SCI/ServletVerifyPsswd)
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:539)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123)
at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1649)
at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:931)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1373)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1252)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:838)
at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:621)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:163)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:144)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2358)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:133)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:118)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:116)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:127)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:152)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
at java.lang.Thread.run(Thread.java:552)

y el codigo fuente ahi les va

package SCI;

import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.text.*;
import java.security.acl.*;
import java.util.*;

public class ServletVerifyPsswd extends HttpServlet{
private String server = new String();
private String puerto = new String();
private String user = new String();
private String password = new String();
private String dbname = new String();
private String url = new String();
public static FileInputStream FILE;

String sql = null;
ResultSet resultado;
Connection conexion;
ServletOutputStream out;
Statement query = null;

String Snombre, Spassword, Sinstitucion, Sveces, Sgrupo;
String Sbroker, Ssentra, Sespecial, Sbo_snt, Sbo_brk, Ssfs, Sbo_sfs, Sdirectorio;

public ServletVerifyPsswd(){
super();
}

public void init(ServletConfig configuracion) throws ServletException{
super.init(configuracion);
try
{

Class.forName("com.mysql.jdbc.Driver");
}
catch(java.lang.ClassNotFoundException e)
{
}
}

public void entra_sitio()
{
try
{
out.println("<HTML>");
out.println("<script language='JavaScript'>n");
out.println(" function entra_sitio(){n");
out.println(" document.param.Cinsti.value='"+Sinstitucion+"';n");
out.println(" document.param.Cgrupo.value='"+Sgrupo+"';n");
out.println(" document.param.Csentra.value='"+Ssentra+"';n");
out.println(" document.param.Cbroker.value='"+Sbroker+"';n");
out.println(" document.param.Cespecial.value='"+Sespecial+"';n");
out.println(" document.param.Cbo_snt.value='"+Sbo_snt+"';n");
out.println(" document.param.Cbo_brk.value='"+Sbo_brk+"';n");
out.println(" document.param.Csfs.value='"+Ssfs+"';n");
out.println(" document.param.Cbo_sfs.value='"+Sbo_sfs+"';n");
out.println(" document.param.Cdirectorio.value='"+Sdirectorio+"';n");
out.println(" document.param.method='POST';n");
//out.println(" document.param.action='http://www.sif.com.mx/servlet/SCI.ServletIndice';n");
out.println(" document.param.action='http://192.168.2.45/sci/servlet/SCI.ServletIndice';n");
out.println(" document.param.submit();n");
out.println("}n");
out.println("</script>n");

out.println("<HEAD><TITLE>n");
out.println("</TITLE></HEAD>n");
out.println("<body onload='entra_sitio();'>n");
out.println("<CENTER><H1><FONT color='666666' size=+3>Bienvenido al Sistema</FONT></H1></CENTER>n");
out.println("<Form name='param'><input type='Hidden' name='Cinsti'>n");
out.println("<input type='Hidden' name='Cgrupo'>n");
out.println("<input type='Hidden' name='Csentra'>n");
out.println("<input type='Hidden' name='Cbroker'>n");
out.println("<input type='Hidden' name='Cespecial'>n");
out.println("<input type='Hidden' name='Cbo_snt'>n");
out.println("<input type='Hidden' name='Cbo_brk'>n");
out.println("<input type='Hidden' name='Csfs'>n");
out.println("<input type='Hidden' name='Cbo_sfs'>n");
out.println("<input type='Hidden' name='Cdirectorio'>n");
out.println("<input type='Hidden' name='Cnombre'></Form>n");
}
catch(IOException e)
{
}
}

public void cierre_html()
{
try
{
resultado.close();
query.close();
conexion.close();
out.println("</BODY></HTML>");
}
catch(IOException e)
{
}
catch (SQLException e)
{
System.out.println("Codigo de error:"+e.getErrorCode());
System.out.println("Estado del SQL:"+e.getSQLState());
}
}

public boolean verifica_usuario() throws IOException, ServletException
{ //segundo metodo
int ihaydato;
try
{
conexion = Conecta("SIF");
Sinstitucion=null;

sql="select count(sci_institucion)";
sql=sql+" from usuarios where sci_no_usuario="+Snombre;
sql=sql+" and sci_password='"+Spassword+"'";
query=conexion.createStatement();
resultado=query.executeQuery(sql);
resultado.next();
ihaydato=resultado.getInt(1);

if (ihaydato>0)
{
sql="select sci_institucion, sci_perfil_sentra, sci_perfil_broker,";
sql=sql+" sci_perfil_especial, sci_perfil_backoffice_snt, sci_perfil_backoffice_brk, sci_perfil_SFT, sci_perfil_backoffice_SFT, sci_perfil_directorio";
sql=sql+" from usuarios where sci_no_usuario="+Snombre;
query=conexion.createStatement();
resultado=query.executeQuery(sql);
while (resultado.next())
{
Sinstitucion=resultado.getString(1).trim();
Ssentra=resultado.getString(2).trim();
Sbroker=resultado.getString(3).trim();
Sespecial=resultado.getString(4).trim();
Sbo_snt=resultado.getString(5).trim();
Sbo_brk=resultado.getString(6).trim();
Ssfs=resultado.getString(7).trim();
Sbo_sfs=resultado.getString(8).trim();
Sdirectorio=resultado.getString(9).trim();
}
return true;
}
else
return false;
}
catch (SQLException e)
{
System.out.println("Codigo de error:"+e.getErrorCode());
System.out.println("Estado del SQL:"+e.getSQLState());
return false;
}
}

public void obten_grupo()
{
int ihaydato;
try
{
Sgrupo=Sinstitucion;

sql="select count(tgf_codigo_institucion)";
sql=sql+" from tgpofin where tgf_codigo_institucion='"+Sinstitucion+"'";;
query=conexion.createStatement();
resultado=query.executeQuery(sql);
resultado.next();
ihaydato=resultado.getInt(1);

if (ihaydato>0)
{
sql="select tgf_gpo_financiero";
sql=sql+" from tgpofin where tgf_codigo_institucion='"+Sinstitucion+"'";;
query=conexion.createStatement();
resultado=query.executeQuery(sql);

while (resultado.next())
{
Sgrupo=resultado.getString(1);
}
}

}
catch (SQLException e)
{
System.out.println("Codigo de error:"+e.getErrorCode());
System.out.println("Estado del SQL:"+e.getSQLState());
}

}

public void despliega_error()
{
try
{
out.println("<HTML>n");
//out.println("<META HTTP-EQUIV='Refresh' CONTENT='2;URL=http://www.sif.com.mx/SCI/sif.html'>n ");
out.println("<META HTTP-EQUIV='Refresh' CONTENT='2;URL=http://192.168.2.45/sci/sif.html'>n ");

out.println("<HEAD><TITLE>Acceso No Autorizado");
out.println("</TITLE></HEAD>n");

out.println("<body bgcolor='#003366'>n");
out.println("<center>n");
out.println("<H1>Acceso No Autorizado (<FONT COLOR='#FF6666'>401</FONT>)</H1>n");
out.println("<P>Por Favor Verifique que su No. de Usuario y Clave sean correctos.</P>n");
out.println("</center>n");
}
catch (IOException e)
{
}
}

protected synchronized void doPost(HttpServletRequest req, HttpServletResponse res)throws ServletException, IOException
{//comienza con este metodo
boolean bhaydato;
res.setContentType("text/html");
out = res.getOutputStream();
Snombre=req.getParameter("usuario");
Spassword=req.getParameter("clave");
Spassword=Spassword.toUpperCase();
bhaydato=verifica_usuario();
if (bhaydato==true)
{
obten_grupo();
entra_sitio();
}
if (bhaydato==false)
despliega_error();
cierre_html();
out.close();
}

public void destroy()
{
// System.out.println("Destrui el ServletVerifyPsswd...");
}

public Connection Conecta(String Host)
{
ObtenDatos(Host);
try
{
Class.forName("com.mysql.jdbc.Driver");
conexion=DriverManager.getConnection("jdbc:mysql://"+server+":"+puerto+"/"+dbname,user,password);
//conexion=DriverManager.getConnection("jdbc:mysql://localhost:3306/bdsif,usersif,sifsci");

return conexion;
}
catch (SQLException e)
{
System.out.println("Codigo de error:"+e.
ErrorCode());
System.out.println("Estado del SQL:"+e.getSQLState());
return conexion;
}
catch (ClassNotFoundException e)
{
e.printStackTrace();
return conexion;
}
}

public boolean ObtenDatos(String Host)
{
int Let = 0;
String Busca="";
boolean St = false;
try
{
//FILE = new FileInputStream("/home/admbd/nuevos/pwdinter.db");
FILE = new FileInputStream("/Users/sci/pwdinter.db");
//FILE = new FileInputStream("/sw_int/Netscape/docs/SCI/pwdinter.db");
while(Busca.equals("NULL")==false)
{
Busca = readLine();
if(Busca.equals("null")==false)
{
Busca = Busca.trim();
if(Busca.charAt(0)=='[')
Busca = Busca.substring(1,Busca.length()-1).trim();
if(Busca.equals(Host)==true)
{
for(int i =1;i<=5;i++)
{
Busca = readLine();
if(Busca.substring(0,Busca.indexOf('=')).trim().equals("ip")==true)
server=Busca.substring(Busca.indexOf('=')+1,Busca.length()-1).trim();
if(Busca.substring(0,Busca.indexOf('=')).trim().equals("port")==true)
puerto=Busca.substring(Busca.indexOf('=')+1,Busca.length()-1).trim();
if(Busca.substring(0,Busca.indexOf('=')).trim().equals("username")==true)
user=Busca.substring(Busca.indexOf('=')+1,Busca.length()-1).trim();
if(Busca.substring(0,Busca.indexOf('=')).trim().equals("password")==true)
password=Busca.substring(Busca.indexOf('=')+1,Busca.length()-1).trim();
if(Busca.substring(0,Busca.indexOf('=')).trim().equals("dbname")==true)
dbname=Busca.substring(Busca.indexOf('=')+1,Busca.length()-1).trim();
St = true;
}
break;
}
}
}//mientras Busca!=NULL
}
catch (FileNotFoundException e)
{
System.out.println("No se encontro el archivo");
return St;
}
return St;
}

public String readLine()
{
int Let = 0;
try
{
Let = FILE.read();
}
catch (IOException e)
{
System.out.println("No se puede leer el archivo");}
if(Let==-1)
return ("NULL");
if(Let==10)
return ("null");
String Busca=String.valueOf((char)Let);
try
{
while(Let!=10 && Let!=-1)
{
Let = FILE.read();
if(Let!=-1)
Busca = Busca + String.valueOf((char)Let);
}
}
catch (IOException e)
{
System.out.println("No se puede leer el archivo");
}
return (Busca);
}
}

haber quien puede ayudarme