В настоящее время мой веб-приложение на основе следующих библиотек/рамки/инструменты:JSF 1.2 миграции приложений на JSF 2.0
- Java 1.6
- JSF 1.2_07-b03-FCS
- Facelets 1.1 .14
- RichFaces 3.3.2.GA
- EL-Functors 1.0.2
- Spring 2.5.2
- Tomcat сервер v5.5
Некоторая дополнительная информация:
Spring
отвечает за управление всеми бобы, используемые JSF (org.springframework.web.jsf.DelegatingVariableResolver
определяется какvariable-resolver
в моемfaces-config.xml
файле).EL-Functors
используется как мойel-resolver
, чтобы расширить язык выражений.- Я создал множество пользовательских компонентов, некоторые из них - просто композиции Facelets, другие - компоненты на Java (некоторые из них расширяют компоненты Richfaces).
Я хочу попробовать (в основном из любопытства, но если это работает хорошо, то почему бы не реального?) Перенести мое приложение JSF 2.0.
Вопрос № 1: какие критические моменты я должен учитывать, чтобы приложение работало правильно?
Я говорю здесь только о том, что есть приложение, не меньше, не более.
Я знаю, что мне придется просмотреть все мои пользовательские компоненты, потому что я буду использовать новую версию Richfaces (4.0), а также посмотреть, правильно ли они работают.
Вопрос №2: что станет первым шагом к достижению преимуществ JSF 2.0? Некоторые идеи, которые я уже есть, являются:
- Удалить
EL-Functors
и использовать Expression Language 2.2; - Позвольте JSF управлять бобами и использовать
@ManagedBean
. Или, возможно, переключиться на CDI-библиотеку, такую как Weld? - Использовать
<f:ajax>
вместо<a4j:support>
?
Что касается JavaEE6
Я знаю, хорошая идея состояла бы в том, чтобы полностью перейти на JavaEE6. Мне понравилось это делать, но по некоторым причинам я просто не могу этого сделать. Одна (плохая) причина в том, что я должен оставаться на серверах Tomcat. Однако я могу добавить новые сторонние библиотеки, чтобы иметь некоторые функции JavaEE6, такие как EL 2.2 ... Поэтому, пожалуйста, рассмотрите этот аспект в своих ответах.
С уважением.