У кого-нибудь есть приложение Icefaces 3.3, работающее на Payara 5 / Glassfish 5? - PullRequest
1 голос
/ 24 апреля 2019

Мы переносим приложение из Glassfish 3.1.2.2 в Payara 5. Приложение использует Icefaces 3.3.0, что подтверждает работу с JSF 2.1.

У нас есть два варианта для развертывания этого в Payara 5, использовать встроенную версию 2.3.x JSF, которая должна быть обратно совместимой, или связывать JSF 2.1.x вместе с Icefaces в войне, включенной в ухо. До сих пор я пробовал каждый из этих методов, но у меня были проблемы с обоими.

При использовании сервера, включенного в JSF версии 2.3.x, как только страница выполняет вызов ajax (в мире icefaces это частичная отправка), мы видим ошибку:

javax.faces.FacesException: Cannot add the same component twice: v9oeh233_icefaces_config

Обычно это означает, что com.sun.faces.config.ConfigureListener был запущен дважды, однако в этом случае этот слушатель не включен в наш web.xml, и я не вижу ошибок, свидетельствующих о том, что он был запущен дважды. Если я включу его в web.xml, то не будет никакой разницы, мы все равно увидим ошибку. Спецификация сервлета, установленная в web.xml, также была указана как 2.5, которая, как предлагал другой поток, остановит автоматическую инициализацию этого слушателя в Servlet 3.0.

При связывании JSF 2.1.x мне пришлось также связать банку с сердечником сварного шва, чтобы заставить его работать, а также использовать функциональность пакета белого списка, чтобы добраться до точки, где он загрузит проект фляги EJB. После его запуска я могу посетить некоторые страницы приложения, но как только я доберусь до той, которая использует наш пользовательский taglib, я получаю следующую ошибку:

java.lang.NoSuchMethodException: com.thirddegree.shared.utils.UserHasRoleTagHandler.<init>(javax.faces.view.facelets.TagConfig)

Класс определенно существует, и этот конструктор существует, так как он работал на glassfish 3.1.2.2, так что, возможно, это связано с управлением версиями класса, но я не могу понять, что.

Кто-нибудь пытался выполнить миграцию icefaces 3.3.0 на Payara 5 или Glassfish 5, и если да, сталкивались ли вы с подобными проблемами или у вас есть какие-то решения? Также какие-нибудь предложения для вещей, которые я мог бы попробовать?

Большое спасибо, Даррен

...