powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / JNDI и dataSource.
2 сообщений из 2, страница 1 из 1
JNDI и dataSource.
    #38838360
wvetal
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть приложение на Spring, сервер - Wildfly.

Подключение к базе было описано в конфиге \WEB-INF\jdbc.properties.
Подключение работало.

Теперь хочу перенести описание подключения в JNDI на сервер Wildfly.

В конфиге Wildfly в файле standalone.xml описал подключение к datasource и xa-datasource.
Протестировал эти соединения к базе через админку Wildfly - оба работают.

Теперь настраиваю подключение в spring-servlet.xml:
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
<!-- Так было раньше, когда подключение бралось из \WEB-INF\jdbc.properties -->
<!-- <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
		destroy-method="close" p:driverClassName="${jdbc.driverClassName}"
		p:url="${jdbc.databaseurl}" p:username="${jdbc.username}" p:password="${jdbc.password}" /> -->

<!-- А вот так я хочу взять подключение из JNDI  -->		
    <bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
        <property name="jndiName" value="java:/jdbc/ora" />
    </bean>	


Проект собирается без ошибок.

Но не деплоится на сервере. Пишет ошибки:
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [org.apache.commons.dbcp.BasicDataSource] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true), @org.springframework.beans.factory.annotation.Qualifier(value=dataSource)}
at org.springframework.beans.factory.support.DefaultListableBeanFactory.raiseNoSuchBeanDefinitionException(DefaultListableBeanFactory.java:988)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:858)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:770)
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:489)
... 24 more

В классе контроллере dataSource объявлен так:
Код: java
1.
2.
3.
	@Autowired
	@Qualifier("dataSource")
	private BasicDataSource dataSource;


Я так понимаю, проблема в том, что раньше я использовал BasicDataSource, а теперь dataSource приходит как JndiObjectFactoryBean.

Как мне сделать так, чтоб новое подключение работало?
Нужно ли приводить dataSource к BasicDataSource? Если - да, то как и где?
Или переписывать(менять) код, там где BasicDataSource?
Или какие еще варианты?
...
Рейтинг: 0 / 0
JNDI и dataSource.
    #38838502
WGA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
WGA
Гость
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / JNDI и dataSource.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]