Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > JUnit тестировамние web приложения


Автор: Dreamtraveler 23.11.2009, 13:23
Здравствуйте. 
Подскажите, пожалуйста как мне решить следующую проблемму:
Есть приложение работающее под Tomcat. В приложении используется пул соединений с MySQL, полученый при помощи 
JNDI. Все настройки находятся в XML файлах приложения и сервера. Создал Unit тест для тестирования класса который использует вышеупомянутый пул для соединения с БД. Но тестовый класс выдает следующую ошибку: 

javax.naming.NameNotFoundException: java:comp/env/jdbc/TestDB. 

Вопрос как и где мне прописать настройки для тест класса, которые использует web приложение?
Я пробовал использовать файл jndi.properties со следующими параметрами:

java.naming.factory.initial=com.sun.jndi.fscontext.RefFSContextFactory
java.naming.provider.url=jdbc:mysql://localhost:3306/uch_plats?autoReconnect=true
java.naming.security.principal=root
java.naming.security.credentials=

не помагло. пишет что не знает про jdbc:mysql://localhost:3306/uch_plats?autoReconnect=true

Заранее благодарю за ответ. 

Автор: polosatij 23.11.2009, 13:45
http://blogs.sun.com/randystuph/entry/injecting_jndi_datasources_for_junit

Автор: Dreamtraveler 23.11.2009, 14:04
Цитата(polosatij @ 23.11.2009,  13:45)
http://blogs.sun.com/randystuph/entry/injecting_jndi_datasources_for_junit

Благодарю.
Я так понял это для внешнего применения. Как раз то что я искал.
А как внедрить внутрь это тест? Есть ссылки? )

Автор: Dreamtraveler 23.11.2009, 17:30
Ну вот все удачно и решилось. 
Дравишки правда использовал от MySQL. А так все почти как в ссылке. И для гибкости все свел в файл *.properties

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)