JBoss 6 Источник данных JNDI не найден - PullRequest
1 голос
/ 14 октября 2011

Я пытаюсь развернуть файл .war на JBoss 6, и я создал источник данных MySql, к которому я хочу получить доступ с помощью JNDI.

Мой конфиг выглядит так:

в myDB-mysql-ds.xml

jndi-name : MyDataSource
in jboss-web.xml
res-ref-name : jdbc/MyDataSource
res-type : javax.sql.DataSource
jndi-name : java:/MyDataSource

в applicationContext.xml

property name="jndiName"
& its value : java:comp/env/jdbc/MyDataSource

Когда я развертываю этот файл войны, он привязывается к MyDatasource, как,

INFO  [ConnectionFactoryBindingService] Bound ConnectionManager 'jboss.jca:service=DataSourceBinding,name=MyDataSource' to JNDI name 'java:MyDataSource'

но все равно я получаю ошибку:

ERROR [[/AppName]] Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Invocation of init method failed; nested exception is javax.naming.NameNotFoundException: JNDI object with [java:comp/env/jdbc/MyDataSource] not found: JNDI implementation returned null

1 Ответ

1 голос
/ 17 декабря 2014

Это потому, что вы обращаетесь к нему каким-то неправильным способом.Вы должны сделать следующее,

<use-java-context>false</use-java-context>

, а затем получить к нему доступ через JNDI name.

...