Я разрабатываю приложение JSF2.0 (я не совсем уверен в версии JSF) на TomEE 1.7.3 (на основе JavaEE6).
В моем Maven pom.xml у меня было слишком много зависимостей, которые я скопировал из многих примеров, но я сократил их до минимальных требований. Ниже представлена часть моего файла pom.xml, посвященная зависимостям:
<dependencies>
<!-- JavaEE6 -->
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-api</artifactId>
<version>6.0</version>
</dependency>
<!-- /JavaEE6 -->
<!-- OmniFaces for JSF, @Eager, postback same request parameters, etc. -->
<dependency>
<groupId>org.omnifaces</groupId>
<artifactId>omnifaces</artifactId>
<version>1.8.3</version>
</dependency>
<!-- /OmniFaces -->
<!-- glassfish faces (is it called mojarra??) -->
<dependency>
<groupId>org.glassfish</groupId>
<artifactId>javax.faces</artifactId>
<version>2.2.12</version>
<scope>runtime</scope>
</dependency>
<!-- /glassfish faces -->
<!-- some mysql connector -->
<!-- some aws sdks, s3, ec2, etc -->
<!-- some apache commons, StringUtils. etc -->
<!-- some apache velocity -->
</dependencies>
Зависимость org.glassfish#javax.faces#2.2.12
также может быть удалена, но это вызывает проблемы с макетом html (с загрузочным css). Понижение до версии 2.0.x вызывает ту же проблему с макетом. Я знаю, что могу это исправить, но это займет пару часов.
Я хочу спросить:
- Хорошая или плохая идея - использовать морды стеклянной рыбки 2.2.x в TomEE1.7.x? В описании TomEE говорится, что он поддерживает только JSF 2.0, но пока работает почти нормально (у меня есть несколько проблем, но они не имеют отношения к этой версии).
- Лучше ли удалить зависимость граней стеклянной рыбы и вместо этого использовать MyFaces по умолчанию?
- Будет ли даже лучше, если я выберу сервер Glassfish вместо TomEE в моем случае?
Кстати, вчера я задал еще один вопрос: JSF2.0 Некоторые лица: сообщения не отправляются на перенаправленную страницу при обработке ошибок
и я осознал, что сначала мне нужно очистить свой проект, чтобы это могло помочь уменьшить мои проблемы.
Спасибо.