Quiero realizar una conexión a la base de datos pero obtengo el error:
type Informe de estado
mensaje /CasaRural/AccesoBD
descripción El recurso requerido (/CasaRural/AccesoBD) no está disponible.
Mi proyecto está en:
C:\Program Files\Apache Software Foundation\Tomcat 7.0\webapps\CasaRural
Dentro de ésta tengo "AccesoBD.java" y el código es:
Código:
También dentro de mi proyecto tengo la carpeta WEB-INF y dentro de ésta la carpeta classes (donde tengo AccesoBD.class), lib y "web.xml" y su código:import java.io.*; import java.sql.*; import javax.sql.*; import javax.servlet.*; import javax.servlet.http.*; import javax.naming.*; public class AccesoBD extends HttpServlet { private DataSource fuenteDatos = null; public void init(ServletConfig conf) throws ServletException { super.init(conf); try { // recuperamos el contexto inicial y la referencia a la fuente de datos Context ctx = new InitialContext(); fuenteDatos = (DataSource) ctx.lookup("java:comp/env/jdbc/AccesoBD"); } catch (NamingException e) { e.printStackTrace(); } } public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { Connection con = null; // conexion parcial res.setContentType("text/html"); // retornamos el tipo de respuesta synchronized (fuenteDatos) { try { con = fuenteDatos.getConnection(); // cogemos la conexion } catch (SQLException e){ e.printStackTrace(); } } PrintWriter out = res.getWriter(); out.println("<html>"); out.println("<body>"); out.println("<h1> Conexión realizada </h1>"); out.println("</body>"); out.println("</html>"); try { con.close(); } catch (SQLException e) { /*out.println("Error en proceso " + e.getMessage());*/ e.printStackTrace(); } } public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException{ doGet(req, res); } }
Código:
Y en el explorador pongo: http://localhost:8080/CasaRural/AccesoBD<?xml version="1.0" encoding="utf-8"?> <web-app xmlns="http://java.sun.com/xml/ns/j2ee" version="2.4" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/dtd/web-app_2_3.dtd"> <servlet> <servlet-name>AccesoBD</servlet-name> <servlet-class>AccesoBD</servlet-class> </servlet> <servlet-mapping> <servlet-name>AccesoBD</servlet-name> <url-pattern>AccesoBD</url-pattern> </servlet-mapping> </web-app>
Uso Tomcat 7
Qué es lo que hago mal?
Gracias!