Кажется, что веб-приложение на экземпляре EC2 не загружает файл persistence.xml
У меня есть экземпляр EC2, на котором я развернул веб-приложение. Экземпляр EC2 - это Linux с Tomcat. Веб-приложение прекрасно работает локально на моем компьютере и подключается к экземпляру AWS RDS MySQL.
Когда я внедряю это веб-приложение в экземпляр EC2, любая страница, требующая обращения к БД, не загружается. Я использую Hibernate и в тот момент, когда я пытаюсь создать сеанс Hibernate, я получаю исключение NullPointerException. Это та же ошибка, что и в моем локальном ящике, если я удаляю файл конфигурации persistence.xml.
Внутри моего файла persistence.xml я просто определил единицу постоянства, как и следовало ожидать. Ничего особенного (и опять же, локально работает нормально).
Почему файл конфигурации persistence.xml не может быть найден / обнаружен и загружен при запуске приложения на экземпляре EC2?
В настоящее время файл конфигурации находится здесь, в проекте:
/web/res/META-INF/persistence.xml
Любой вклад приветствуется. Спасибо!
2 ответа
Попробуйте скопировать папку META-INF с вашим persistence.xml в вашу папку src. Раньше у меня были проблемы, когда я не мог загрузить свой файл persistence.xml, потому что его не было в моем classpath.
Итак, я идиот. У меня был jar коннектора MySQL в каталоге lib tomcat, так что все мои проекты автоматически использовали его без добавления вручную в каждый проект. Но когда вы помещаете вещи в файл военных действий и публикуете их, они не включают эти "обычные" банки. Как примечание стороны, не должны ли эти банки быть включены в войну? Мне кажется странным, что это не так.