首先,感谢@popeye
了解@popeye 的定义,这是我的 2 美分
“jboss-deployment-structure.xml”的位置:src/main/webapp/WEB-INF/jboss-deployment-structure.xml
<?xml version="1.0" encoding="UTF-8"?>
<jboss-deployment-structure>
<deployment>
<!-- Hey Server please don't add these dependencies. I don't need them.
I have mine in my application dependencies -->
<exclusions>
<module name="org.apache.commons.logging" />
<module name="org.slf4j" />
<module name="org.slf4j.ext" />
<module name="org.slf4j.impl" />
<module name="org.apache.log4j" />
</exclusions>
<dependencies>
<module name="com.oracle" />
<module name="org.jboss.ironjacamar.jdbcadapters" slot="main" />
</dependencies>
</deployment>
</jboss-deployment-structure>
现在,logback.xml 正在行动。哟!
- 为什么需要这个 -
<module name="com.oracle" />?
这是你在JBOSSstandalone.xml中提到的驱动模块名称
<subsystem xmlns="urn:jboss:domain:datasources:1.1">
<datasources>
<datasource><!-- your configurations --></datasource>
<drivers>
<driver name="ojdbc6-11.2.0.4" module="com.oracle">
<xa-datasource-class>oracle.jdbc.OracleDriver</xa-datasource-class>
</driver>
</drivers>
</datasources>
</subsystem>
请注意,这是用于 JBOSS 服务器到数据库的通信。
[即使你的 project/lib 中有 ojdbc6-11.2.0.4.jar,你也需要这个配置 ]
如何想出这个名称“com.oracle”?这是一个标准吗?
否。这是我在服务器上创建的文件夹结构
在此处查看此 SO 帖子 -Xmlparserv2 error while application deployed in jboss, Installing Oracle ojdbc module in JBoss for Java web application'如何在 JBOSS 中创建 Oracle 模块'
还请注意不要将此与您可能在项目中添加的依赖项 pom.xml 混淆。
即:这个
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc6</artifactId>
<version>11.2.0.4</version>
<scope>provided</scope> <!-- to exclude from WEB-INF/lib -->
</dependency>
你需要上面的项目依赖来编写Java代码,编译它,
以及在运行时,让您的代码与驱动程序进行通信。
- 为什么需要这个 -
<module name="org.jboss.ironjacamar.jdbcadapters" slot="main" /> ?
否则,在 Spring 应用程序的 JBoss 上获取 jndi 数据源集时,您可能会收到 错误。
所以这是一个依赖。不要忘记在您的pom.xml 中添加罐子
<dependency>
<groupId>org.jboss.ironjacamar</groupId>
<artifactId>ironjacamar-jdbc</artifactId>
</dependency>