В настоящее время мое веб-приложение основано на следующих библиотеках/фреймворках/инструментах:
- Java 1.6
- JSF 1.2_07-b03-FCS
- Лицеи 1.1.14
- Richfaces 3.3.2.GA
- EL-Functors 1.0.2
- Spring 2.5.2
- Сервер Tomcat v5.5
Дополнительная информация:
-
Spring
отвечает за управление всем beans, используемым 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
и используйте язык выражений 2.2; - Пусть JSF управляет beans и использует
@ManagedBean
. Или, возможно, перейдите в библиотеку CDI, например Weld? - Используйте
<f:ajax>
вместо<a4j:support>
?
Что касается JavaEE6
Я знаю, хорошей идеей было бы полностью перейти на JavaEE6. Мне понравилось это делать, но по некоторым причинам я просто не могу этого сделать. Одна (плохая) причина в том, что я должен оставаться на серверах Tomcat. Однако я могу добавить новые сторонние библиотеки, чтобы иметь некоторые функции JavaEE6, такие как EL 2.2... Поэтому, пожалуйста, рассмотрите этот аспект в своих ответах.
С уважением.