java.sql.SQLException : No suitable driver

标签 java

我能够很好地部署我的 war ,当我尝试运行它时,我在控制台日志中收到一些运行时错误

Cannot create JDBC driver of class 'oracle.jdbc.OracleDriver' for connect URL 'jdbcracle:thin(DESCRIPTION = (LOAD_BALANCE = ON)(FAILOVER = ON)(ADDRESS = (PROTOCOL = TCP)(HOST = TSS2A056N1-vip.svr.us.co.net)(PORT = 4329))(ADDRESS = (PROTOCOL = TCP)(HOST = TSS2A056N2-vip.svr.us.co.net)(PORT = 4329)) (CONNECT_DATA = (SERVICE_NAME = atmt01d_taf.co.net)(FAILOVER_MODE = (TYPE = select) (METHOD = basic))))'
java.sql.SQLException: No suitable driver
at java.sql.DriverManager.getDriver(DriverManager.java:264)
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createConnectionFactory(BasicDataSource.java:1437)
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1371)
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:1044)
at org.springframework.orm.hibernate3.LocalDataSourceConnectionProvider.getConnection(LocalDataSourceConnectionProvider.java:81)
at org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:423)
at org.hibernate.jdbc.ConnectionManager.getConnection(ConnectionManager.java:144)
at org.hibernate.jdbc.JDBCContext.connection(JDBCContext.java:119)
at org.hibernate.transaction.JDBCTransaction.begin(JDBCTransaction.java:57)
at org.hibernate.impl.SessionImpl.beginTransaction(SessionImpl.java:1326)
at org.springframework.orm.hibernate3.HibernateTransactionManager.doBegin(HibernateTransactionManager.java:555)
at org.springframework.transaction.support.AbstractPlatformTransactionManager.getTransaction(AbstractPlatformTransactionManager.java:371)
at org.springframework.transaction.interceptor.TransactionAspectSupport.createTransactionIfNecessary(TransactionAspectSupport.java:317)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:105)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:625)
at com.jpmc.tss.tspayments.rest.controller.CustomizeColumnsController$$EnhancerByCGLIB$$76448fa3.getColumnsToDisplay(<generated>)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.springframework.web.bind.annotation.support.HandlerMethodInvoker.invokeHandlerMethod(HandlerMethodInvoker.java:174)
at org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.invokeHandlerMethod(AnnotationMethodHandlerAdapter.java:421)
at org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.handle(AnnotationMethodHandlerAdapter.java:409)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:771)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:716)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:644)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:560)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190)
at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:291)
at org.apa

我认为这是一个类路径问题 - 我确保classes12.jar和ojdbc-11.2.0.1.0.jar都在tomcat home/lib和java home/jre/lib/ext中,并且这两个目录都是在类路径中。我还确认 ojdbc-11.2.0.1.0.jar 位于我的应用程序的 Libraries/Maven Dependencies 目录中。

此时我觉得 war 应该可以访问这个驱动程序 jar。有什么想法如何调试这个吗?

最佳答案

您的连接 URL 中有拼写错误吗?

jdbcracle:thin(DESCRIPTION....

应该是

jdbc:oracle:thin(DESCRIPTION....

关于java.sql.SQLException : No suitable driver,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11441289/

相关文章:

c# - 如何在 .NET 中实现匿名方法中捕获的值

Java HttpClient 3.1 多部分发布

java - 加载 jsoup 时 JavaLoader 出现问题

java - double 值和浮点值比较

java - 我正在编写一个 javafx 自定义 LoginModule 并收到以下有关 javafx 权限的 AccessControlException 。这是策略文件问题吗?

java - 为什么我的 Firebase addvalueEventlistener 不会被调用?

java - 过滤掉带有字符串字符的ip地址日志文件

java - 如何使用 Apache 文件上传启用附件

java - 您将如何处理将来可能不同的两个相同的值对象?

java - 如何设计MQ Server?