所以我在一个相当大的应用程序中遇到了一个小问题,在x1000尝试之后,我感到很茫然。
我试图通过JSF页面查看DAO模式中的mysql数据库。
首先是daoManager的getConnection部分:
Connection con = null;
DataSource ds;
public Connection getConnection() throws Exception {
try {
Class.forName("com.mysql.jdbc.Driver");
InitialContext cxt = new InitialContext();
ds = (DataSource) cxt.lookup( "java:/comp/env/jdbc/db");
} catch (Exception e) {
e.printStackTrace();
throw e;
}
return ds.getConnection();
}
现在,鉴于正确的驱动程序位置,这应该已经在这里工作了。 我已经尝试了一些事情,将驱动程序放在项目和WEB-INF中,标记为库:
此外,我还在tomcat / lib中包含了所述驱动程序。
context.xml如下:
<Resource name="jdbc/db" auth="Container" type="javax.sql.DataSource"
maxActive="100" maxIdle="30" maxWait="10000"
username="******" password="******" driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/javatest"/>
最后,web.xml如下:
<resource-ref>
<description>DB Connection</description>
<res-ref-name>jdbc/db</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
现在.. stacktrace中的错误如下:
java.sql.SQLException:无法创建类&#39;&#39;用于连接网址&#39; null&#39;
引起:java.sql.SQLException:没有合适的驱动程序
如果需要更多信息,请不要对我说犹豫不决:)