ฉันกำลังพยายามเพิ่ม JSP ที่เปิดใช้งานฐานข้อมูลลงในแอปพลิเคชัน Tomcat 5.5 ที่มีอยู่ (GeoServer 2.0.0 หากช่วยได้)
ตัวแอปพูดคุยกับ Postgres ได้ดีดังนั้นฉันจึงรู้ว่าฐานข้อมูลพร้อมแล้วผู้ใช้สามารถเข้าถึงได้ทุกสิ่งที่ดี สิ่งที่ฉันพยายามทำคือแบบสอบถามฐานข้อมูลใน JSP ที่ฉันได้เพิ่มเข้าไป ฉันใช้ตัวอย่างการกำหนดค่าในตัวอย่างแหล่งข้อมูล Tomcatนอกกรอบไปแล้ว taglibs ที่จำเป็นอยู่ในตำแหน่งที่ถูกต้อง - ไม่มีข้อผิดพลาดใด ๆ เกิดขึ้นถ้าฉันมี taglib refs ดังนั้นจึงพบ JAR เหล่านั้น ไดรเวอร์ postgres jdbc, 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]