0

我有一个应用程序使用以下方法通过 Tomcat 连接到数据库DriverManager

DriverManager.getConnection(url, user,password);

在 Tomcat中运行良好,完全没有问题。

但是当我将这个相同的应用程序移植到JBOSS时,连接总是会返回NULL

我有一些要求会阻止我通过使用访问 JNDI 资源来建立 JDBC 连接DriverManager.getConnection(url)

有谁知道为什么会发生这种情况以及我该如何解决?

这是我收到的堆栈跟踪.....

java.sql.SQLRecoverableException: IO Error: The Network Adapter could not establish the connection
    at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:419)
    at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:536)
    at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:228)
    at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:32)
    at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:521)
    at java.sql.DriverManager.getConnection(DriverManager.java:582)
    at java.sql.DriverManager.getConnection(DriverManager.java:185)
    at TestSterlingConnection.getStrelingDBDetails(TestSterlingConnection.java:48)
    at TestSterlingConnection.makeCall(TestSterlingConnection.java:95)
    at TestSterlingConnection.doGet(TestSterlingConnection.java:77)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
4

2 回答 2

0

I have eliminated JBOSS by executing the same call on this box outside of the container. When I do this I get the same error message which leads me to believe this issue is caused by some Network Configuration. I am now escalating to the administrators responsible for maintaining this server.

Thank you so much!! I really appreciate your help glen.

于 2012-09-06T21:29:50.950 回答
0

可能是因为适当的 JDBC 驱动程序不在您的类路径中。ServiceLoader驱动程序现在使用(META-INF/services)机制自动注册自己。所以它只需要在类路径上。DriverManager.getConnection扫描已注册的驱动程序以找到与 url 模式匹配的驱动程序(即 oracle、postgres 等)。您的 Tomcat 实例可能在 lib 目录之一中有一个 jdbc jar 文件。

于 2012-09-06T02:48:21.273 回答