Saya mencoba menambahkan JSP yang mendukung database ke aplikasi Tomcat 5.5 yang ada (GeoServer 2.0.0, jika itu membantu).
Aplikasi itu sendiri berbicara dengan Postgres dengan baik, jadi saya tahu bahwa database sudah habis, pengguna dapat mengaksesnya, semua hal bagus itu. Apa yang saya coba lakukan adalah kueri database di JSP yang telah saya tambahkan. Saya telah menggunakan contoh konfigurasi dalam contoh sumber data Tomcat di luar kotak. Taglib yang diperlukan ada di tempat yang benar - tidak ada kesalahan yang terjadi jika saya hanya memiliki taglib ref, jadi saya menemukan JAR tersebut. Driver jdbc postgres, postgresql-8.4.701.jdbc3.jar ada di $ CATALINA_HOME / common / lib.
Inilah bagian atas 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>
Bagian yang relevan dari $ CATALINA_HOME / conf / server.xml, di <Host>
dalamnya ada di dalam <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>
Baris ini adalah yang terakhir pada tag di 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>
Terakhir, pengecualian:
exception
org.apache.jasper.JasperException: Unable to get connection, DataSource invalid: "java.sql.SQLException: No suitable driver"
[...wads of ensuing goo elided]