JSP (Java Server Page) - Ejemplo Tomcat con Ms Access

 
Vista:

Ejemplo Tomcat con Ms Access

Publicado por Carlos (2 intervenciones) el 19/02/2009 16:06:57
Hola,

Estoy intentando hacer un ejemplo para conectar una aplicacion a una base de datos en Tomcat. El programa solo tiene que contar los records de tabla y devolverlos.

El programa ejecutado desde la consola (Main), sin usar la web conecta a la bd bien, funciona.

Y la web funciona sin conectar a la bd...

Sabeis si hay que configuar algo en Tomcat para usar Access o anadir alguna libreria o algo?

Por favor, cualquier pista que me podais dar sera muy util !! :)


Pero si intento accedar a Access desde Tomcat me da este error:

--------------------------------------------------------------------------------------------------
java.sql.SQLException: General error
at sun.jdbc.odbc.JdbcOdbc.createSQLException(JdbcOdbc.java:6986)
at sun.jdbc.odbc.JdbcOdbc.standardError(JdbcOdbc.java:7114)
at sun.jdbc.odbc.JdbcOdbc.SQLDriverConnect(JdbcOdbc.java:3073)
at sun.jdbc.odbc.JdbcOdbcConnection.initialize(JdbcOdbcConnection.java:323)
at sun.jdbc.odbc.JdbcOdbcDriver.connect(JdbcOdbcDriver.java:174)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:185)
at ListarServlet.doGet(ListarServlet.java:31)
----------------------------------------------------------------------------------------------------


El codigo del progama es muy simple:

------------------------------------------------------------------------------------------------------
public class ListarServlet extends HttpServlet {

private static final String DRIVER = "sun.jdbc.odbc.JdbcOdbcDriver";
private static final String URLCON = "jdbc:odbc:GoldenAgent";
private static String sUsuario = "admin"; //Usuario de conexión con la base de datos.
private static String sClave = "admin"; //Clave de acceso a la base de datos.
private static Connection oCnx = null;


@Override protected
void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{
try {
/*
Context ctx = new InitialContext();
DataSource ds=(DataSource) ctx.lookup("java:comp/env/jdbc/GoldenAgent");
Connection conn=ds.getConnection();
Statement stmt=conn.createStatement();
ResultSet rs=stmt.executeQuery("SELECT count(*) as cuenta FROM users");
*/
Class.forName(DRIVER);
oCnx = DriverManager.getConnection(URLCON,sUsuario,sClave);
//oCnx = DriverManager.getConnection(URLCON);
Statement stmt=oCnx.createStatement();
ResultSet rs=stmt.executeQuery("SELECT count(*) as cuenta FROM users");


int result=0;
if (rs.next())result=rs.getInt("cuenta");


PrintWriter out = response.getWriter();

out.println("<html>");
out.println("<head>");
out.println("</head>");
out.println("<body bgcolor="white">");

out.println("<p>La cuenta da: "+result);

out.println("</body>");
out.println("</html>");


//conn.close();
} catch (Exception ex) {
ex.printStackTrace();
}
}
-----------------------------------------------------------------------------------------

gracias,
Carlos
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