0

与无法在 Tomcat 中加载 net.sourceforge.jtds.jdbc.Driver相同的错误,但该解决方案这次不起作用。刚刚在 FreeBSD 10 服务器上完成了 Tomcat 8.0.9 到 8.0.12 的更新,即使 jtds jar 在 lib 文件夹中,我也再次收到该错误。我已经下载了 jtds 的新副本,以防旧的损坏,并且我还重新部署了我的 WAR(以防万一)。没变。显然,回滚到 Tomcat 8.0.9 是一种解决方法,但我有一些时间来处理它,并且尝试在服务器软件上保持最新状态是明智的......关于为什么我可能会再次收到此错误的想法以及如何解决?

22-Jul-2014 15:21:17.811 SEVERE [http-nio-443-exec-9] org.apache.catalina.core.StandardWrapperValve.invoke Ser
vlet.service() for servlet [base] in context with path [] threw exception
 com.sscorp.base.exception.SystemException: org.apache.commons.dbcp.SQLNestedException: Cannot load JDBC drive
r class 'net.sourceforge.jtds.jdbc.Driver'
        at com.sscorp.base.util.DBUtils.query(DBUtils.java:175)
        at com.sscorp.base.util.DBUtils.query(DBUtils.java:158)
        at com.sscorp.base.util.DBUtils.findEntitiesBy(DBUtils.java:324)
        at com.sscorp.base.util.DBUtils.findEntityBy(DBUtils.java:315)
        at com.sscorp.base.dao.common.UserDAO.findByUsernameAndPassword(UserDAO.java:50)
        at com.sscorp.base.web.AuthenticationFilter.doFilter(AuthenticationFilter.java:56)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
        at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:615)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:136)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
        at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:610)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:526)
        at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1078)
        at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:655)
        at org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.process(Http11NioProtocol.java:2
22)
        at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1566)
        at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1523)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
        at java.lang.Thread.run(Thread.java:745)
Caused by: org.apache.commons.dbcp.SQLNestedException: Cannot load JDBC driver class 'net.sourceforge.jtds.jdb
c.Driver'
        at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1136)
        at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:880)
        at org.apache.commons.dbutils.QueryRunner.prepareConnection(QueryRunner.java:334)
        at org.apache.commons.dbutils.QueryRunner.query(QueryRunner.java:483)
        at com.sscorp.base.util.DBUtils.query(DBUtils.java:172)
        ... 24 more
Caused by: java.lang.ClassNotFoundException: net.sourceforge.jtds.jdbc.Driver
        at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1324)
        at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1177)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:259)
        at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1130)
        ... 28 more
4

1 回答 1

0

在几天的工作没有运气之后,又出现了一些软件更新。应用它们(甚至没有重新启动,因为它们不是服务/缓存),它现在神奇地工作。看似无关,更新的是 curl 和 python。

于 2014-09-17T20:27:33.297 回答