Java - coneccion a base de dato con strut

 
Vista:

coneccion a base de dato con strut

Publicado por eduardo S (15 intervenciones) el 17/03/2009 20:15:41
Saludos tengo el siguiente problema para coneccion a base de datos con struts

Coloque los siguientes parámetros en el struts-config.xml


<data-sources>
<data-source type="org.apache.commons.dbcp.BasicDataSource">
<set-property property="driverClassName" value="sun.jdbc.odbc.jdbcOdbcDriver" />
<set-property property="url" value="jdbc:odbc:nombreBD" />
<set-property property="username" value="" />
<set-property property="password" value="" />
<set-property property="maxActive" value="10" />
<set-property property="maxWait" value="5000" />
<set-property property="defaultAutoCommit" value="false" />
<set-property property="defaultReadOnly" value="false" />
</data-source>
</data-sources>

y el código lo tengo así en la acción

try
{
javax.sql.DataSource dataSource= getDataSource(HttpServletRequest);

// ****************en la siguiente linea es donde me da el error*********************************************
java.sql.Connection con = dataSource.getConnection();

PreparedStatement pstmt = con.prepareStatement("select * from tabla");

La pregunta es que me falta por hacer o porque me da el error ahi

Agradezco su ayuda
Atte

Eduardo S
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:coneccion a base de dato con strut

Publicado por mario (622 intervenciones) el 17/03/2009 21:52:44
cual es el error, no lo indicas
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:coneccion a base de dato con strut

Publicado por Eduardo S (15 intervenciones) el 18/03/2009 14:29:56
el codigo completo es el siguiente... se que me da el error en la linea porque por supuesto se viene por el catch pero no se el error exactamente porque la variable
e.getMessage() no imprime nada.. y por eso utilizo la variable mensaje la cual trae
"despues del data source";

try {
javax.sql.DataSource dataSource = this.getDataSource(request);
mensaje="despues del data source";
con = dataSource.getConnection();
mensaje="despues del data source";

PreparedStatement pstmt =
con.prepareStatement("SELECT * FROM contactos");

ResultSet rs = pstmt.executeQuery();

while(rs.next()){
lngcodigo=rs.getString("codigo") ;
nombre=rs.getString("nombre") ;
apellido=rs.getString("apellido") ;
email=rs.getString("email") ;
Contactos contac=new Contactos(lngcodigo,nombre,apellido,"admin","passwd",email,"telf","cel");
contactos.add(contac);
}

}
catch( Exception e ){
//System.out.println(e.getMessage());
//e.printStackTrace();
Contactos con1=new Contactos("lngcodigo",usuBD,"apellido","admin","passwd","email","telf","cel");
contactos.add(con1);
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:coneccion a base de dato con strut

Publicado por Eduardo S (15 intervenciones) el 18/03/2009 15:19:57
el los logs encontre que el error es:.....

null
java.lang.NullPointerException
at com.negocio.ListaContactosAction.execute(ListaContactosAction.java:53)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Unknown Source)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:coneccion a base de dato con strut

Publicado por mario (622 intervenciones) el 18/03/2009 15:25:03
mmm y cual es la linea 53 de la clase ListaContactosAction.java??? es un NullPointer un objeto no se esta inicializando
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:coneccion a base de dato con strut

Publicado por Eduardo S (15 intervenciones) el 18/03/2009 17:03:40
javax.sql.DataSource dataSource;
java.sql.Connection con;

try {
dataSource = this.getDataSource(request);
con = dataSource.getConnection();//esta es la linea 53 (la del error)

supongo que dataSource no se inicializa bien... no se que me falta por hacer ??
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:coneccion a base de dato con strut

Publicado por mario (622 intervenciones) el 18/03/2009 20:08:51
de hecho aki
dataSource = this.getDataSource(request);
es donde cuando se invoca al metodo getDataSource no lo puede obtener.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar