我正在尝试向现有的tomcat5.5应用程序(geoserver2.0.0,如果有帮助的话)添加一个支持数据库的jsp。
应用程序本身和postgres的对话很好,所以我知道数据库已经启动,用户可以访问它,所有这些好东西。我要做的是在jsp中添加一个数据库查询。我在tomcat数据源示例中使用了配置示例。必要的taglib放在正确的位置——只要有taglib ref,就不会出错,所以它正在查找那些jar。postgresjdbc驱动程序postgresql-8.4.701.jdbc3.jar位于$catalina\u 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\u 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]
16条答案
按热度按时间frebpwbc16#
可能导致的一个非常愚蠢的错误是在JDBCURL连接的开始处添加空间。
我的意思是:-
假设您错误地给出了如下jdbc url
(请注意,url开头有一个空格,这将导致错误)
正确的方法应该是:
(注意在开始处没有空格,你可以在url的末尾留空格,但不留空格是安全的)