当前位置: 首页 > 知识库问答 >
问题:

无法在Glassfish 3上使用JDBC连接到数据库

班高明
2023-03-14

有没有办法检查我的Glassfish是否真的看到了ojdbc6.jar?

我正在使用Netbeans 7.2.1、JSF 2、Glassfish 3.1.2和Oracle 11g。我想连接到这个数据库。

所以首先我需要在我的 Glassfish 中创建连接池。我打开本地主机:4848设置5件事:

  1. 资源类型:javax.sql.数据源
  2. 数据源的类名:oracle.jdbc.pool.OracleDataSource
  3. 属性:“用户”
  4. 属性:“密码”
  5. 属性:“网址”

保存,重置服务器(只是为了确定),ping....错误:类名错误或没有为Oracle . JDBC . pool . Oracle data source设置类路径

我已经做了什么:

>

  • 首先检查ojdbc jar。从我的Oracle目录中,我将每个名为“ojdbc”的jar复制到“C:\glassfish3\glassfish\domains\domain1\lib”中。

    其次,检查网址的正确性。在 Netbeans 中,切换到“服务”选项卡,右键单击“数据库”、“新建连接...设置要连接的数据(首先我必须添加jodbc6.jar..所以我添加了完全相同的文件 - 来自glassfish文件夹)。它有效!连接正常。我查看了 Netbeans 数据库 URL - 与我在 glassfish gui 中的 url 相同。我也尝试了带有\的url,但没有帮助。

    那么,它还能是什么呢?也许第一名不太好。所以这是我的问题:我如何检查我的Glassfish是否真的看到了ojdbc6.jar?

    编辑。当我运行玻璃鱼时,我会收到一些警告:

    警告:存在多个 [2] JMX MBeanServer 实例,我们将在索引 [0] : [com.sun.enterprise.v3.admin.DynamicInterceptor@704d54] 处使用该服务器。

    警告:JMX MBeanServer正在使用中:索引[0]中的[com . sun . enterprise . v3 . admin . dynamic interceptor @ 704 d54]

    警告:正在使用的JMX MBeanServer:[com.sun.jmx.mbeanserver.JmxMBeanServer@ed312d]来自索引[1]

  • 共有3个答案

    孙子民
    2023-03-14

    请注意,当NetBeans在Windows上运行glassfish时,它使用的“domains”目录在您的主目录中,而不是在< code>C:\glassfish或< code > C:\ Program Files \ glassfish 中

    在我的windows 7上,运行NetBeans 8.0.2和Glassfish 4.1,我必须将Oracle驱动程序jar (ojdbc6.jar)放入

    c:/Users/t823517/AppData/Roaming/NetBeans/8.0.2/config/GF_4.1/domain1
    
    卫嘉佑
    2023-03-14

    "..但是你怎么知道它是“ext”文件夹?而不仅仅是“lib”?一个人说lib,另一个分机。

    使JDBC驱动程序JAR文件可访问要将JDBC驱动程序集成到Glass变迁服务器域中,请将JAR文件复制到域-dir/lib目录中,然后重新启动服务器。这使得部署在共享相同配置的服务器上的所有应用程序或模块都可以访问类。有关Glass变迁服务器类加载器的更多信息,请参阅Glass变迁服务器开源版应用程序开发指南中的“类加载器”。如果您使用的是具有EcliLink扩展名的Oracle数据库,请将JAR文件复制到域-dir/lib/ext目录中,然后重新启动服务器。有关详细信息,请参阅Glass变迁服务器开源版应用程序开发指南中的“Oracle数据库增强功能”

    由此处

    唐钊
    2023-03-14

    将所有必需的jar文件(ojdbc6.jar.……)复制到“域\域1\lib\ext”文件夹。然后重新启动您的glass乐于。然后尝试从glass乐于ping,它会工作

     类似资料:
    • 我正在尝试使用jdbc连接到我的MS SQL2008数据库,如下所示,但它的给出错误 我的数据库名为,实例名为。请建议我如何提供数据库实例名称和数据库名称在URL。 上面写着 但是当我尝试用相同的用户名和密码从DB GUI登录时,它被登录了。想知道在jdbc设置中在哪里提供数据库实例的详细信息 我也试过用下面的dut不管用

    • 我创建了一个简单的类来测试与我的localhost数据库的通信,这是我用Mysql Workbench创建的。Mysql服务器正在运行。JDBC驱动程序被添加到我的项目的类路径中。 当我运行程序时,我得到以下异常: 线程“main”com.mysql.cj.jdbc.Exceptions.CommunicationsException异常:通信链接失败 最后一个成功发送到服务器的数据包是在0毫秒前

    • 我编写了一些代码来在本地数据库中插入一个表,但我在堆栈跟踪中得到以下错误: 显然,我可能是错的,但这与我的时区或时区在MySQL或JDBC连接器中的设置方式有关。 这里是我的原始源代码:

    • 我试着用这个代码, 也许是错误的语法? 它总是得到SQLException并且不会写入日志中的任何内容... 不知道为什么会这样? 原木 03-05 14:18:33.862 8177-8177/com示例。myapplication E/YOUR_APP_LOG_TAG:我收到一个错误java.lang.ClassNotFoundException:com.mysql.jdbc。java.lan

    • 我将DataGrip配置为使用spark安装文件夹中的JDBC库。

    • 我使用 JTDS 版本: jtds-1.3.1 MS SQL JDBC version: mssql-jdbc-8.4.0.jre8 even mssql-jdbc-9.2.0.jre8 Java 8 更新 251 为简单起见,代码将相同: Android Studio 無法連接到 Azure sql server 中的資料庫 连接到SQL服务器或AzureSQL时遇到问题。 我想用这个语法连接: