0

眼镜:

  • 网豆 7.3
  • JDK 6
  • Java EE 5
  • JSF 2
  • 服务器:Weblogic 11g (10.3.6)

嗨,程序员。我正在我的 Web 应用程序中使用 JDBC 模块和描述符。起初,NetBeans 正在创建在服务器中注册数据库并部署它所需的数据源文件。但是当我想自己在服务器中部署 WAR 文件时,JDBC 连接不存在。它不识别 JNDI。

我有一个名为“data-source-1-jdbc”的 XML,我从旧版本的项目中复制了它(NetBeans 不再创建文件,我不知道为什么)让 Weblogic 自动创建 JDBC 数据源,但是我应该怎么做才能让 Weblogic 获取这个 jdbc 数据源并使用我的 [Java Web App] 部署它?

我刚刚阅读了本教程:http ://docs.oracle.com/cd/E15051_01/wls/docs103/jdbc_admin/packagedjdbc.html

有一个名为“模块”的标签可以满足我的要求。像这样:

<module>
<name> MyFile </name>
<path> {File Path} </path>
</module>

但它仅适用于 weblogic-application.xml,它是用于企业应用程序 (EAR) 而非 WAR 的文件。在我的 Java Web 中,我只有这些:

  • web.xml
  • weblogic.xml

我已经尝试<module>在 weblogic.xml 中使用该标签,但它不起作用。

我想要的只是避免在服务器中手动创建连接,而是在部署应用程序时使用该 xml 作为配置文件。

那么,你是如何做到这一点的呢?

4

2 回答 2

2

好的,在我尝试了很多之后,我刚刚在 NetBeans 上看到了一个名为“使用现有资源创建企业应用程序”的选项,我选择 Web 应用程序作为“现有资源”,它创建了一个企业应用程序,并将 Web 应用程序作为模块。

在那里,现在我有一个 EAR 而不仅仅是一个 WAR,我只是按照 Oracle 官方教程中的过程进行操作。完毕。

于 2013-11-06T02:21:17.883 回答
2

您可以使用配置文件创建连接池。只需将配置文件放在 domain_dir/config/jdbc 并重新启动服务器,它将自动创建连接池。

//前任

<?xml version="1.0" encoding="UTF-8"?>
<jdbc-data-source xmlns="http://xmlns.oracle.com/weblogic/jdbc-data-source">
<name>jdbc/karthick</name>
<jdbc-driver-params>
<url>jdbc:mysql://localhost:3306/karthick</url>
<driver-name>com.mysql.jdbc.Driver</driver-name>
<properties>
<property>
<name>user</name>
<value>mysql</value>
</property>
<property>
<name>password</name>
<value>mysql</value>
</property>
</properties>
</jdbc-driver-params>
<jdbc-data-source-params>
<jndi-name>jdbc/karthick</jndi-name>
</jdbc-data-source-params>
</jdbc-data-source>

使用 jndi(jdbc/karthick) 名称访问数据库连接。

于 2013-12-20T02:39:43.163 回答