использование параметров веблогического источника данных в веб-приложении - PullRequest
0 голосов
/ 29 мая 2019

У меня есть веб-приложение с простым старым JDBC. Использование weblogic 12c и Java 1.7

Настроил общий источник данных в weblogic.

На данный момент я развертываю его как WAR - в будущем мне нужно будет развернуть его как EAR.

Итак, вот три варианта, которые я попробовал: Для этого источника данных настроено 4 имени JNDI: 'abc' 'lmn' 'pqr' 'xyz'

1

public static DataSource dataSource1 = null;
Context initContext1 = new InitialContext();
dataSource1 = (DataSource)initContext1.lookup("abc");

Это работает.

2

Defined the datasource in web.xml:

<resource-ref>
    <description>DB Connection</description>
    <res-ref-name>lmn</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
</resource-ref>

В коде Java:

 public static DataSource dataSource2 = null;
 Context initContext2 = new InitialContext();
 dataSource2 = (DataSource)initContext2.lookup("lmn");

Это тоже отлично работает

3

@Resource(name = "pqr")
public static DataSource dataSource3 = null;

conn = dataSource3.getConnection();

Это НЕ работает.

Не уверен, что здесь не так? и какой вариант лучше использовать?

Будет проверять файл EAR отдельно и проверять второй вопрос вокруг него.

1 Ответ

0 голосов
/ 29 мая 2019

С

@Resource(mappedName="pqr")

это работает на моем weblogic.

См. SO: сопоставленное имя

...