Настройка различной конфигурации на сервере dev и prod server
Я разрабатываю веб-приложение. Я использую Tomcat на своем рабочем столе для разработки, а затем развертываю файл war на сервере приложений iseries websphere (8.5). Я определил источник данных на каждом сервере, ProxyDs.
Моя проблема на tomcat, я должен кодировать это: DataSource dataSource = (DataSource) ctx.lookup("java:comp/env/jdbc/ProxyDS"); и на веб-сфере это: DataSource dataSource = (DataSource) envCtx.lookup("jdbc/ProxyDS");
Какое решение иметь код, который работает на сервере разработки и на рабочем сервере?
Я думал о создании файла свойств, который будет отличаться на сервере разработки и производственном сервере, но файл свойств должен быть вне военного файла. (если он встроен в файл war, он будет одинаковым на dev-сервере и prod-сервере, поэтому я вернусь к исходной точке)
Может быть, есть другое решение, чем файл свойств, я открыт для любой идеи
1 ответ
Проверьте этот ответ. Вы все еще должны использовать java:comp/env/jdbc/ProxyDS
в WebSphere, но это ссылка на ресурс, и она должна быть сопоставлена с именем JNDI источника данных на сервере. Эта ссылка может быть сопоставлена с различными JNDI на сервере разработки и в производстве. Вы можете сделать это через консоль администратора, установочный скрипт wsadmin или предоставив ibm-web-bnd.xml
файл.