Я использую Resin 3.1.9 для запуска веб-приложения Java с JPA 2.1. Я поместил библиотеки (JAR) в свою папку WEB-INF/lib и включил их в Resin.conf следующим образом:
<class-loader>
<tree-loader path="${resin.root}/webapps/myapp/WEB-INF/lib"/>
</class-loader>
Если бы я не включил его в Resin.conf, я бы увидел исключение о том, что некоторые классы не удалось загрузить (даже при первой загрузке на домашней странице). Хорошо, теперь при загрузке домашней страницы это не проблема, но мне интересно, когда я пытаюсь добавить какую-либо запись (через форму CRUD), она говорит:
java.lang.NoClassDefFoundError: javax/persistence/spi/PersistenceProvider
На самом деле класс javax.persistence.spi.PersistenceProvider абсолютно существует в «WEB-INF/lib», который находится в файле «hibernate-jpa-2.1-api-1.0.0.Final.jar».
Есть ли какой-либо шаг отладки, как проверить загруженные библиотеки во время запуска Resin? Или у меня что-то не так в Resin.conf?
java.lang.ClassNotFoundException: javax.persistence.spi.PersistenceProvider
14.10.2014