В wildfly 10.0.0.Final, eclipselink, похоже, не поддерживается должным образом. Конечно, hibernate - это JPA по умолчанию, предусмотренная для wildfly, но включение модуля eclipselink поддерживается, и использование eclipselink вполне возможно. Однако банка-файл элементов persistence.xml, кажется, решить во время выполнения некоторой специальной wildfly VFS дорожки, которые спящая может работать, но EclipseLink, кажется, не знает, как обращаться.Wildfly 10.0.0.Final - persistence.xml элемент jar-файла не поддерживается должным образом при использовании eclipselink
Из того, что я смог отладить, и теперь, будучи уверенным, что моя конфигурация на 100% правильна. Конфигурация работает
- wildfly + спящий режим/элемент баночка-файл решает VFS:/путь во время выполнения
- WebLogic + элемент EclipseLink/банка-файл решает файл:/путь Дарины выполнения
- widlfy + EclipseLink/не работает - застрял с помощью
<class>
элемента
Я убежден, что корень проблемы заключается в том, что EclipseLink не готова иметь дело с wildfly специальных VFS (виртуальная файловая система) путями.
Хотя EclipseLink обрабатывает тот же VFS пути, как спящий режим: - Hibernate сканирует путь и выходит найти объектные классы - другой выходит с пустыми руками.
Я собрал следующее примерное приложение. https://github.com/99sono/eclipselink-wildfly-jar-file-issue
Приложение разветвляется на два одинаковых пути.
- Один для Weblogic,
- другой для Wildfly.
Приложение weblogic может быть развернуто идеально. Однако его можно в большинстве случаев использовать для демонстрации того, насколько «неприемлемым» может быть определение элемента jar-файла, в зависимости от того, является ли человек: - развертывание из eclipse (например, в развязанной войне) - или развертывание в качестве реального WAR. Это, скорее всего, сводится к ошибке плагина weblogic eclipse, но хорошо ... его можно заставить работать. А именно, чтобы код мог быть развёрнут в обоих модальностях, я был вынужден использовать в качестве jar-файла, значение спецификации, не соответствующее JEE, ../lib/entities.jar. это объясняется более подробно в приложении readme.
В любом случае, Weblogic имеет большое преимущество в использовании обычного файла:/urls, который отлично подходит для работы с eclipselink. Итак, для этого смешанного поведения родительской папки смешанного пути weblogic, связанного с тем, как приложение развертывается, существует обход.
Второе приложение для wildfly. Здесь все становится жестким. В дикой ситуации, когда мы развертываем приложение и отлаживаем логику загрузки Hibernate или логику загрузки eclipselink, мы видим, что используются URL-адреса виртуальной файловой системы (vfs). Как указано выше, URL-адреса vfs для jar-файлов идентичны для спящего режима и для eclipselink.
Если мы развертываем из затмения, наши проекты взорваны. Они не развертываются как реальные .jar-файлы, а в разобранные каталоги.
Если мы используем настоящий WAR-файл, с другой стороны, используя консоль управления, вместо этого наши пути относятся к директории binfly bin. В этом случае эти пути представляют собой 100% -ные виртуализированные каталоги, которые не могут быть открыты в нашей реальной файловой системе. Это контрастирует с сценарием, в котором мы развертываем eclipse с помощью инструментов jboss. Путь к взорванным диспетчерам можно открыть в нашей файловой системе.
Что, кажется, происходит в wildfly, является то, что: - в то время как оба сценария зимуют, кажется, способен справиться с любой VFS путь Jar-файл, который приходит свой путь - EclipseLink не может.
В файле readme для примера приложения содержатся некоторые рекомендации для некоторых хороших классов для отладки развертывания.
Кто-нибудь знает об обходе, чтобы сделать работу jar-файла на eclipelink?
Я сделал что-то не так в моем persistence.xml для ecipselink, и eclipselink готов обрабатывать vfs jboss?
В настоящий момент времени единственное, что работает правильно, - это подход <class>qualified</class
, но, конечно же, этот подход является бесполезным в большинстве случаев и просто помогает создать адский ад.
Я искренне приветствую любую помощь на получение элемента баночка-файл для корректной работы с ecipselink 2.6.4 на wildfly 10.
я там никакого света в конце туннеля?
С уважением