Я намагаюся додати JSP з підтримкою бази даних до існуючої програми Tomcat 5.5 (GeoServer 2.0.0, якщо це допомагає).
Сам додаток чудово розмовляє з Postgres, тому я знаю, що база даних запущена, користувач може отримати до неї доступ, усі ці хороші речі. Я намагаюся зробити запит до бази даних у JSP, який я додав. Я використовував приклад конфігурації у прикладі джерела даних Tomcat майже нестандартно. Необхідні тагліби знаходяться у правильному місці - помилок не виникає, якщо я просто маю посилання на тагліб, тож він знаходить ці JAR. Драйвер jdbc postgres, postgresql-8.4.701.jdbc3.jar знаходиться в $ CATALINA_HOME / common / lib.
Ось вершина 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>
Відповідний розділ з $ CATALINA_HOME / conf / server.xml, всередині <Host>
якого, в свою чергу, знаходиться всередині <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>
Ці рядки є останніми в тезі в 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>
Нарешті, виняток:
exception
org.apache.jasper.JasperException: Unable to get connection, DataSource invalid: "java.sql.SQLException: No suitable driver"
[...wads of ensuing goo elided]