【问题标题】:Configure JDBC oracle specific property v$session.program using Jboss and JPA (hibernate)使用 Jboss 和 JPA(休眠)配置 JDBC oracle 特定属性 v$session.program
【发布时间】:2011-03-24 06:47:06
【问题描述】:

我想设置v$session.program Oracle 属性,以便在会话表中提供可用信息。我正在使用 JPA 和 jndi XA 数据源,该数据源是通过部署在 Jboss 的部署文件夹中的 oracle-xa-ds.xml 创建的,因此我无法访问连接的构造函数。 我可以访问 Connection 对象,在 JPA 2 中使用 unwrap,在 JPA 1 中通过将 JPA 转换为 Hibernate 类,但没有属性设置器(只有客户端信息属性是继续启动 JDBC 4.0 的方式)。

所以我的问题是,通过 Jboss 4.2 使用 JPA(带有 Hibernate):

  • 是否可以在persistence.xml中配置v$session.program?
  • 是否可以在 oracle-ds.xml 中配置 v$session.program ?
  • 他们还有其他解决方案吗?

感谢您提供任何有价值的 cmets 和答案!

【问题讨论】:

    标签: oracle hibernate jpa jboss datasource


    【解决方案1】:

    我今天遇到了同样的问题,经过大量的摆弄和阅读文档后,我终于有了尤里卡时刻:

    添加以下参数:

    <xa-datasource-property name="connectionProperties">v$session.program=YourUniqueName</xa-datasource-property>
    

    就是这样。

    【讨论】:

      【解决方案2】:

      我很确定这必须记录在某个地方,但我们可以在 JBoss wiki 中找到以下内容:

      How To Specify "PROGRAM" Oracle Connection Property

      JBoss 版本:JBoss 4.0.3 SP1,Oracle DB 版本:10g

      为了能够区分JDBC Oracle 服务器端的连接, 由不同的 JBoss 创建 实例,Oracle 的 PROGRAM 连接 属性可能设置在 Oracle 特定的 JDBC 数据源配置 文件 使用以下标签:

      <connection-property name="v$session.program">ADistinguishedNameForPROGRAMProperty</connection-property>
      

      ...
      <connection-url>AConnectionURL</connection-url>
      <connection-property name="v$session.program">ADistinguishedNameForPROGRAMProperty</connection-property>
      <driver-class>oracle.jdbc.OracleDriver</driver-class>
      ...
      

      这样 DBA 可以拥有适当的 粒度:

      • AWR
      • v$session 视图
      • 检查/评估 PROGRAM 连接的其他工具 财产

      【讨论】:

      • 谢谢 Pascal,感谢您的回答,但不幸的是,连接属性不适用于 XA 数据源。对于 XA 数据源,只有 xa-datasource-property 标记可用,并且只能配置可用作 XADataSource JavaBean 属性的属性。我刚找到一个有同样问题的伙伴community.jboss.org/message/227607#227607
      • @snowflake:Erf,没有注意到您使用的是 XA。需要更多地挖掘这个......如果你没有按照链接的建议实施补丁:)
      • 我希望有机会在 Jboss 5 或更高版本上对其进行测试,然后我将有效地考虑实施补丁!
      猜你喜欢
      • 1970-01-01
      • 2011-08-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-09
      • 2011-05-08
      • 2013-06-27
      相关资源
      最近更新 更多