Простой JNDI ContextFactory? - PullRequest
       1

Простой JNDI ContextFactory?

1 голос
/ 27 июля 2011

Мое приложение WAR развернуто в Amazon Elastic Beanstalk. Они не поддерживают JNDI, но мне это нужно для JPA и модульных тестов. Какую фабрику контекста JNDI я могу использовать в качестве обходного пути? Мне нужно простое решение с открытым исходным кодом, которое позволило бы мне настроить всю фабрику через jndi.properties. Я попробовал GuiceyFruit, но похоже, что он не позволяет конфигурировать источник данных в одном файле. Есть предложения?

пс. OpenEJB будет работать, но это слишком много для такой простой задачи

1 Ответ

2 голосов
/ 15 января 2017

Попробуйте Simple-JNDI. Это дает вам реализацию службы JNDI в оперативной памяти и позволяет заполнять среду JNDI объектами, определенными в файлах свойств. Также поддерживается загрузка источников данных или пулов соединений, настроенных в файле.

Чтобы получить пул соединений, вы должны создать файл, подобный этому:

type=javax.sql.DataSource
driver=com.sybase.jdbc3.jdbc.SybDriver
pool=myDataSource
url=jdbc:sybase:Tds:servername:5000
user=user
password=password 

В вашем приложении вы можете получить доступ к пулу через

Context ctx = new InitialContext();
DataSource ds = (DataSource) ctx.lookup("path/to/your/connectionPool");

Подробнее об этом можно узнать на https://github.com/h-thurow/Simple-JNDI.

...