#java #hibernate #spring #session #jboss6.x
#java #спящий режим #весна #сеанс #jboss6.x
Вопрос:
Я пытаюсь развернуть свое приложение на JBoss 6 и использую hibernate3, struts2 и spring3 в своем приложении. Но когда я развертываю свое приложение, оно выдает ошибку:
INFO [СТАНДАРТНЫЙ ВЫВОД] org.springframework.beans.factory.Исключение BeanCreationException: ошибка при создании компонента с именем ‘SessionFactory’, определенным в ресурсе ServletContext [/WEB-INF/applicationContext.xml ]: Сбой вызова метода init; вложенным исключением является java.lang.NoSuchFieldError: factoryFinder
Ответ №1:
Версии некоторых jar несовместимы.
Один jar ожидает поля factoryFinder
в другом jar, но оно не существует в поставляемой версии.
Какие оскорбительные банки я не могу определить из предоставленной информации. Но обратите внимание, что, возможно, JBoss включает версию hibernate в свои библиотеки, поэтому ваш jar может не загружаться загрузчиком классов.
Комментарии:
1. Здравствуйте, сэр, спасибо за ответ… Я использую org.springframework.aop-3.0.2.RELEASE.jar и другие подобные банки 3.0.2 и hibernate3.jar .. какие файлы jar я должен попытаться изменить?
2. Я точно не знаю. Эксперимент. И проверьте, что уже поставляется с jboss
Ответ №2:
Такого рода ошибки возникают, когда мы пытаемся изменить сервер. Версии библиотек, которые мы используем, должны быть совместимы с версией сервера.
Предположим, что если вы обновляете свой сервер, вам также придется обновить свои jar-зависимости.
Проблема, с которой вы столкнулись, связана с несовместимыми файлами jar. Однако нельзя сказать, из-за какого конкретного файла он показывает эту ошибку.
Вам нужно будет отследить, в какой момент возникает это исключение, а затем этот класс присутствует в файле jar. В соответствии с этим вы можете попытаться обновить свои файлы jar и выполнить это.
Поскольку это очень поздний ответ, вы можете захотеть обновить все файлы jar до последних версий.