gpt4 book ai didi

java - 在 jboss 中部署应用程序时出现 Xmlparserv2 错误,在 JBoss 中为 Java Web 应用程序安装 Oracle ojdbc 模块

转载 作者:行者123 更新时间:2023-11-30 03:43:09 25 4
gpt4 key购买 nike

引用此 SO 线程 - Java: Returning XMLType Data from StoredProcedure, Usage of ojdbc6.jar xdb6.jar xmlparserv2.jar for Java to PLSQL interaction[ojdbc6.jar、xdb6.jar、xmlparserv2-11.1.1.jar]

当应用程序部署在安装了 JDK1.6 的 PC 上的本地 tomcat 服务器中时,该应用程序工作完美[能够检索数据,没有任何异常],但是当部署在运行 JDK 1.7 的 JBOSS EAP 6.2 服务器中时,它会抛出异常尝试通过 OJDBC 桥检索 XML 时出现异常。

java.lang.NullPointerException
13:53:51,265 ERROR [stderr] (http-/0.0.0.0:8080-1) at oracle.jdbc.driver.NamedTypeAccessor.getOracleObject(NamedTypeAccessor.java:320)
13:53:51,268 ERROR [stderr] (http-/0.0.0.0:8080-1) at oracle.jdbc.driver.NamedTypeAccessor.getObject(NamedTypeAccessor.java:217)
13:53:51,270 ERROR [stderr] (http-/0.0.0.0:8080-1) at oracle.jdbc.driver.NamedTypeAccessor.getObject(NamedTypeAccessor.java:123)
13:53:51,273 ERROR [stderr] (http-/0.0.0.0:8080-1) at oracle.jdbc.driver.OracleCallableStatement.getObject(OracleCallableStatement.java:2049)
13:53:51,275 ERROR [stderr] (http-/0.0.0.0:8080-1) at oracle.jdbc.driver.OracleCallableStatementWrapper.getObject(OracleCallableStatementWrapper.java:818)

我尝试更改本地编译器设置并将 JRE 从 1.6 安装到 1.7,本地仍然运行良好。

请就我在远程 PC 中的 JBOSS 服务器上遇到的此错误提供您的意见。 JBOSS 是否试图覆盖我已放入应用程序 war 文件中的 ojdbc jar?

更新:将安装 JBoss 的远程服务器中的 JDK 版本从 1.7 降级为 1.6。在 JBoss 服务器中运行时仍然出现此错误。寻找可能遇到过此问题或知道此问题原因的人。请分享您的意见

最佳答案

以下是我声明 Oracle 数据源的方法(用于调用 pl 或执行 xqueries)

注入(inject)数据源(在无状态 ejb 中)

@Resource(name = "java:jboss/datasources/xmlDatasource")
private DataSource productDS;

在standalone.xml中声明数据源

<datasource jndi-name="java:jboss/datasources/xmlDatasource" pool-name="xxx" enabled="true" use-java-context="true">
<connection-url>jdbc:oracle:thin:@xxx:1521:xxx</connection-url>
<driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
<driver>oracle</driver>
<pool>
<min-pool-size>0</min-pool-size>
<max-pool-size>10</max-pool-size>
</pool>
<security>
<user-name>xxx</user-name>
<password>xxx</password>
</security>
</datasource>
<drivers>
<driver name="oracle" module="oracle.jdbc">
<xa-datasource-class>oracle.jdbc.OracleDriver</xa-datasource-class>
</driver>
</drivers>

模块定义

<module xmlns="urn:jboss:module:1.1" name="oracle.jdbc">

<resources>
<resource-root path="ojdbc6.jar"/>
</resources>
<dependencies>
<module name="javax.api"/>
</dependencies>
</module>

使用 maven 将模块依赖项添加到我的 Ear 应用程序(内部有无状态 ejb..)(或编辑您的 manifest.mf 并添加模块名称)

<archive>
<manifestEntries>
<Dependencies>oracle.jdbc</Dependencies>
</manifestEntries>
</archive>

关于java - 在 jboss 中部署应用程序时出现 Xmlparserv2 错误,在 JBoss 中为 Java Web 应用程序安装 Oracle ojdbc 模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26370270/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com