J'essaie d'ajouter un JSP compatible avec la base de données à une application Tomcat 5.5 existante (GeoServer 2.0.0, si cela aide).
L'application elle-même parle très bien à Postgres, donc je sais que la base de données est active, que l'utilisateur peut y accéder, toutes ces bonnes choses. Ce que j'essaye de faire est une requête de base de données dans une JSP que j'ai ajoutée. J'ai utilisé l'exemple de configuration dans l' exemple de source de données Tomcat peu près . Les taglibs requis sont au bon endroit - aucune erreur ne se produit si je n'ai que les références taglib, donc il trouve ces JAR. Le pilote jdbc de postgres, postgresql-8.4.701.jdbc3.jar se trouve dans $ CATALINA_HOME / common / lib.
Voici le haut 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 section pertinente de $ CATALINA_HOME / conf / server.xml, à l'intérieur du <Host>
qui se trouve à son tour dans <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>
Ces lignes sont les dernières de la balise dans 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>
Enfin, l'exception:
exception
org.apache.jasper.JasperException: Unable to get connection, DataSource invalid: "java.sql.SQLException: No suitable driver"
[...wads of ensuing goo elided]