servlet [...]的Servlet.service()在路径[/ ...]的上下文中引发了异常[Servlet执行抛出异常]的根本原因

时间:2017-05-04 14:38:33

标签: java servlets jdbc datasource

我正在尝试设置DataSource连接;我实际得到的错误是java.lang.AbstractMethodError: com.mysql.jdbc.Connection.isValid(I)Z

但是标题的错误突然出现在上面。

-

我有一个带有此DataSource设置的caffeJdbc.java servlet

Context ctx = new InitialContext();
DataSource dataSource = (DataSource) ctx.lookup("java:comp/env/jdbc/caffeDB");
Connection con = dataSource.getConnection();

-

这是项目web.xml设置,带有servlet映射和资源引用

<welcome-file-list>
    <welcome-file>index.html</welcome-file>
</welcome-file-list>
<servlet>
    <servlet-name>tjdbc</servlet-name>
    <servlet-class>caffeJdbc</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>tjdbc</servlet-name>
    <url-pattern>/caffeJdbc</url-pattern>
</servlet-mapping>

<resource-ref>
    <res-ref-name>jdbc/caffeDB</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
</resource-ref>

-

server.xml中

<GlobalNamingResources>
 <Resource name="jdbc/caffeDB" 
 global="jdbc/caffeDB"
 url="jdbc:mysql://localhost:3306/caffe"/>
</GlobalNamingResources>

-

这是context.xml

<Context path="/JDBCDataSource">
    <WatchedResource>WEB-INF/web.xml</WatchedResource>
    <ResourceLink global="jdbc/caffeDB"
        name="jdbc/caffeDB"
        type="javax.sql.DataSource">
    </ResourceLink>
</Context>

我在lib目录和路径中加载了JDBC驱动程序和commons-dbcp2-2.1.1文件

1 个答案:

答案 0 :(得分:1)

您使用的JDBC驱动程序可能已过时,请检查,您可以查看here以获取更多信息。