我创建了一个maven项目。
我正在尝试将MSSQL(Microsoft SQL Server 2014)与我的J2EE应用程序连接起来。但它引发了以下异常
org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null'
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createConnectionFactory(BasicDataSource.java:1452)
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1371)
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:1044)
at com.jagir.ecommerce.database.DatabaseConnection.testConnection(DatabaseConnection.java:27)
at com.jagir.ecommerce.user.servlet.Registration.doGet(Registration.java:34)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
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:298)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.sql.SQLException: No suitable driver
at java.sql.DriverManager.getDriver(DriverManager.java:315)
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createConnectionFactory(B
asicDataSource.java:1437)
... 18 more
我的代码:
网状物xml
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1">
<display-name>ecommerce</display-name>
<resource-ref>
<description>Database connection</description>
<res-ref-name>jdbc/testdb</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
<servlet>
<servlet-name>Registration</servlet-name>
<servlet-class>com.test.user.servlet.Registration</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Registration</servlet-name>
<url-pattern>/registration</url-pattern>
</servlet-mapping>
</web-app>
登记
public class Registration extends HttpServlet
{
private static final long serialVersionUID = 1L;
public Registration()
{
super();
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{
response.getWriter().append("Served at: ").append(request.getContextPath());
request.setAttribute("title", "User Registration");
new DatabaseConnection().testConnection();
request.getRequestDispatcher("pages/user/registration.jsp").forward(request, response);
}
}
数据库连接
public class DatabaseConnection
{
private DataSource dataSource;
private Connection connection;
private Statement statement;
public void testConnection()
{
//get data source
try
{
Context initContext = new InitialContext();
Context envContext = (Context) initContext.lookup("java:/comp/env");
dataSource = (DataSource) envContext.lookup("jdbc/testdb");
connection = dataSource.getConnection();
statement = connection.createStatement();
System.out.println("TEST");
ResultSet rs = statement.executeQuery("select * from temp");
System.out.println("Done");
while(rs.next())
{
System.out.println(rs.getString(0));
}
}
catch (NamingException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
catch (SQLException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
上下文xml
<?xml version="1.0" encoding="UTF-8"?>
<Context path="/test" docBase="test" crossContext="true"
reloadable="true" debug="1">
<!-- Specify a JDBC datasource -->
<Resource name="jdbc/testdb" auth="Container" type="javax.sql.DataSource"
username="sa" password="password" driverClass="com.microsoft.sqlserver.jdbc.SQLServerDriver"
url="jdbc:sqlserver://devmangal;databaseName=testV1.0;integratedSecurity=true"
maxActive="10" maxIdle="4" />
</Context>
试试这个,
>
手动尝试放置上下文。下的xml文件
${CATALINA_HOME}/conf/CATALINA/localhost/context。xml
重命名此上下文。xml到{app name}。xml
你好
看起来,您对JVM使用了错误的驱动程序版本。如果使用32位JVM(Java虚拟机),请使用文件“sqljdbc_auth”。dll“在文件夹“x86”中,但操作系统是x64。如果使用x64 JVM和x64处理器,请使用文件夹“x64”中的文件“sqljdbc_auth.dll”。
...无法为连接URL'null'创建类的JDBC驱动程序...
向阿克塞尔·阿诺德·班格特致以最诚挚的问候——赫尔佐根拉斯2016
我是jdbc编程新手。所以请帮忙。运行程序时获取此异常。 我复制了mysql连接器。将jar文件放入jre/lib/ext文件夹。提前准备好。
我有一个问题,Eclipse IDE不能识别. jar文件中的jdbc驱动程序。我已经尝试将它放在WEB-INF/Lib的构建路径和构建文件夹中。我已经在我的项目中添加了Class.forname来注册驱动程序。 这是我mysql数据库的url:“jbdc:mysql://localhost:3306/loginDB“。我使用的是Tomcat v9.0服务器。我使用的是5.1.49驱动程序版本的.
问题内容: 这个问题已经在这里有了答案 : 臭名昭著的java.sql.SQLException:未找到合适的驱动程序 (13个答案) 4年前关闭。 我有一个Java类,该类通过在Tomcat上运行的JSP中使用的JDBC通过JDBC访问MySQL数据库,并且遇到“未找到驱动程序异常”的问题。 我有一个方法: 这会在“ 这是我从catalina.out的打印输出”上引发错误: 唯一重要的错误是一个
我正在尝试运行Selenium测试。我正在使用C#。我试过的每个司机都有问题。 看起来像是chromedriver。已找到exe,但它可以找到Chrome二进制文件。我设置了通往chrome的路径。自动搜索失败后显式执行。我甚至在最后用“chrome.exe”试过了。我总是得到同样的结果: 在以下位置找不到Chrome二进制文件: C:\用户\Vilem\AppData\本地\谷歌\Chrome\
我正在使用JDBC接收器连接器尝试Kafka和Postgres接收器。 例外: 水槽特性: 我已经设置了< code > plugin . path =/usr/share/Java/Kafka-connect-JDBC /usr/share/java/kafka-connect-jdbc我有以下文件: , , 和其他一些基本上与汇合物一起打包的罐子。 然后我下载了 postgres-jdbc 驱
当我创建kafka jdbc源连接器(debezium连接器用于带有confluent-5.4.0的oracle)时,出现错误“没有找到适合jdbc: oracle: oci…”。 我的oracle版本是企业版发布11.2.0.4.0-64位生产,我尝试了不同的驱动程序jar,但得到了相同的异常。 我的jdk版本是: 我已经将 debezium-连接器-预言机添加到文件夹融合-5.4.0/shar