gpt4 book ai didi

oracle - JBoss上的Oracle ADF:包装的Jdbc连接问题

转载 作者:行者123 更新时间:2023-12-01 15:21:16 24 4
gpt4 key购买 nike

我正在尝试在JBoss服务器上使用Oracle ADF业务组件运行应用程序。我已经部署了它,但是当我尝试加载页面时,出现以下异常:

 java.lang.ClassCastException: org.jboss.resource.adapter.jdbc.jdk6.WrappedConnectionJDK6 cannot be cast to oracle.jdbc.OracleConnection

有办法解决吗?也许将JBoss配置为不使用此包装的连接,或者将ADF框架配置为不包装它?

最佳答案

这已经有一段时间了,但是我将继续回答我自己的问题。

有关Oracle Metalink(需要登录)的指南,其中介绍了如何在JBoss上部署ADF / BC。我很确定这是为我解决了这个问题(前一阵子..)

这是它的副本:

摘要
本说明的目的是说明如何创建ADF BC应用程序模块以及如何在JBoss Application Server上部署它。它还将向您显示在JBoss端需要执行哪些配置才能使Application Module正常工作。

范围和应用
本说明适用于将ADF BC模块部署到JBoss Application Server的任何人。

如何将ADF BC模块部署到JBoss应用服务器
将ADF BC模块部署到JBoss Application Server的必要步骤如下:

  • 在JBoss服务器上设置ADF运行时库
  • 在JBoss Server上设置数据源
  • 配置ADF BC模块
  • 部署ADF BC模块

  • 我将详细介绍每个步骤。此处还附有完整示例供下载。
    在JBoss服务器上设置ADF运行时库
  • 关闭应用程序服务器。
  • 调用ADF运行时安装程序向导。选择工具| ADF运行时安装程序,然后从子菜单中选择服务器类型。
  • 进入向导的页面。有关向导任何页面的详细说明,请单击“帮助”。
  • 在“位置”页面上,选择要在其上安装库的服务器的主目录(或根目录)。
  • 在“安装选项”页面上,您可以选择要执行的操作。
    *从JDeveloper安装中安装ADF运行时库。
    *卸载以前安装的ADF运行时库。
    *将ADF运行时库的存档版本恢复为 Activity 版本。
  • 在“摘要”页面上,如果希望准备任何现有的UIX JSP项目进行部署,请单击“迁移”。
  • 在“摘要”页面上,确认安装的详细信息,然后单击“完成”。
  • 重新启动应用程序服务器。

  • 在JBoss Server上设置数据源
    要在JBoss服务器中创建Oracle数据源,您需要执行以下步骤:
  • 创建一个名为oracle-ds.xml的文件。该文件将包含您的数据源配置。以下是有关此类文件外观的示例。
    <?xml version="1.0" encoding="UTF-8"?>
    <datasources>
    <local-tx-datasource>
    <jndi-name>OracleDS</jndi-name>
    <use-java-context>false</use-java-context>
    <connection-url>jdbc:oracle:thin:@mydbhost.com:1521:mysid</connection-url>
    <driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
    <user-name>hr</user-name>
    <password>******</password>
    <exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.OracleExceptionSorter</exception-sorter-class-name>
    </local-tx-datasource>
    </datasources>
  • 将文件复制到/ deploy。这会将它安装在JBoss服务器上。

  • 配置ADF BC模块
    为了使其在JBoss服务器上运行,需要对ADF BC模块采取一些步骤。

    创建将在JBoss应用程序服务器上使用的ADF BC模块时,需要将SQL Flavor设置为SQL92,将Type Map设置为Java。使用JBoss作为应用程序服务器时,需要进行此更改。

    ****将ADF业务组件项目打包为EJB会话Bean。
  • 右键单击“应用程序模块”,选择“业务组件部署”。
  • 在概要文件对话框中,选择EJB会话Bean。
  • 在“EJB会话Bean”对话框中,选择“部署到:其他EJB容器”
  • 在AppModules对话框中,配置应用程序模块,如下图1所示。

  • 图1.应用程序模块的配置

    完成后,您的项目将类似于下图2所示。

    图2. JDeveloper项目

    最后一步是配置应用程序模块以使用我们在上一步中创建的数据源。这样做如下:
  • 编辑应用程序模块。
  • 在导航器中,右键单击“业务组件”应用程序模块图标,然后选择“配置”。
  • 选择适当的配置。
  • 选择此配置,然后单击“编辑”。
  • 在“连接类型”列表中,选择“JDBC数据源”。
  • 输入数据源名称。例如:java:/ OracleDS。

  • 部署ADF BC模块
    如果您的JBoss服务器位于本地或本地计算机上,则可以直接从JDeveloper内部进行部署。如果您的JBoss服务器是远程服务器,并且未映射到本地计算机,或者您有一个稍后将使用此模块的JSP应用程序,则不能直接在JDeveloper中部署它。两种方法都在下面介绍。

    从JDeveloper内部署模块
    1.创建与目标应用程序服务器的连接。
    2.如果要支持EJB的JBoss特定的配置选项,请添加jboss.xml部署描述符文件。有关此文件的更多信息,请参见 http://www.jboss.org
    3.如果您的项目是Business Components UIX JSP项目,请向其中添加所需的Cabo资源。
    4.在导航器中选择部署配置文件,单击鼠标右键,然后选择“部署到|”。 <应用程序服务器连接>将应用程序打包为存档文件,并通过选定的应用程序服务器连接进行部署。

    在JDeveloper之外部署模块
    如果您的JBoss服务器是远程服务器,并且未映射到本地计算机,或者您有一个JSP应用程序,以后将使用此模块,则必须执行以下操作:
  • 从上下文菜单中选择“部署到EAR文件”,以将其部署为EAR文件。您必须将此应用程序部署到EAR文件而不是WAR文件,因为JBoss不会在WAR文件的java:comp / env / JNDI命名空间下添加EJB引用。
  • 将此文件手动复制到/ deploy目录。
  • 关于oracle - JBoss上的Oracle ADF:包装的Jdbc连接问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/277665/

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