Сконфигурируйте свойство JDBC oracle v $ session.program, используя Jboss и JPA (hibernate) - PullRequest
3 голосов
/ 02 августа 2010

Я бы хотел установить свойство Oracle v $ session.program , чтобы информация была доступна в таблице сеансов.Я использую JPA с источником данных jndi XA , созданным с помощью oracle-xa-ds.xml, развернутого в папке развертывания Jboss, и поэтому у меня нет доступа к конструктору Соединения.У меня есть доступ к объекту Connection, в JPA 2 с использованием unwrap, в JPA 1 путем приведения JPA к классам Hibernate, но нет установщика свойств (только свойства Client Info, которые позволяют продолжить запуск JDBC 4.0).

Поэтому мой вопрос заключается в использовании JPA (с Hibernate) с использованием Jboss 4.2:

  • Возможно ли настроить v $ session.program в файле persistence.xml?
  • можно ли сконфигурировать v $ session.program в oracle-ds.xml?
  • Есть ли у них какой-либо другой подход к решению?

Спасибо за любые ценные комментарии и ответы!

Ответы [ 2 ]

1 голос
/ 24 ноября 2011

У меня была та же проблема сегодня, после долгих волнений и прочтения документации, наконец, у меня наступил момент Эврики:

Добавить следующий параметр:

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

Вот и все.

1 голос
/ 03 августа 2010

Я почти уверен, что это где-то задокументировано, но вот что мы можем найти в вики JBoss:

Как указать свойство соединения Oracle для программы "ПРОГРАММА"

Версия JBoss: JBoss 4.0.3 SP1, Версия БД Oracle: 10g

Чтобы можно было различить JDBC соединения на стороне сервера Oracle, которые созданы разными JBoss экземпляры, Соединение Oracle PROGRAM свойство может быть установлено в пределах Конфигурация источника данных JDBC для Oracle файл , используя следующие теги:

<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>
...

Таким образом, администраторы могут иметь зернистость в:

  • AWRs
  • v $ сеанс просмотра
  • Другие инструменты, которые проверяют / оценивают соединение PROGRAM свойство
...