Estoy tratando de agregar una JSP habilitada para base de datos a una aplicación Tomcat 5.5 existente (GeoServer 2.0.0, si eso ayuda).
La aplicación en sí habla con Postgres muy bien, así que sé que la base de datos está activa, el usuario puede acceder a ella, todas esas cosas buenas. Lo que estoy tratando de hacer es una consulta de base de datos en una JSP que he agregado. He usado el ejemplo de configuración en el ejemplo de fuente de datos de Tomcat prácticamente listo para usar . Los taglibs necesarios están en el lugar correcto; no se producen errores si solo tengo las referencias de taglib, por lo que es encontrar esos JAR. El controlador jdbc de postgres, postgresql-8.4.701.jdbc3.jar está en $ CATALINA_HOME / common / lib.
Aquí está la parte superior de la JSP:
<%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<sql:query var="rs" dataSource="jdbc/mmas">
select current_validstart as ValidTime from runoff_forecast_valid_time
</sql:query>
La sección relevante de $ CATALINA_HOME / conf / server.xml, dentro de la <Host>
cual está a su vez dentro <Engine>
:
<Context path="/gs2" allowLinking="true">
<Resource name="jdbc/mmas" type="javax.sql.Datasource"
auth="Container" driverClassName="org.postgresql.Driver"
maxActive="100" maxIdle="30" maxWait="10000"
username="mmas" password="very_secure_yess_precious!"
url="jdbc:postgresql//localhost:5432/mmas" />
</Context>
Estas líneas son las últimas en la etiqueta en webapps / gs2 / WEB-INF / web.xml:
<resource-ref>
<description>
The database resource for the MMAS PostGIS database
</description>
<res-ref-name>
jdbc/mmas
</res-ref-name>
<res-type>
javax.sql.DataSource
</res-type>
<res-auth>
Container
</res-auth>
</resource-ref>
Finalmente, la excepción:
exception
org.apache.jasper.JasperException: Unable to get connection, DataSource invalid: "java.sql.SQLException: No suitable driver"
[...wads of ensuing goo elided]