



Несколько советов: Разберитесь в JSF-запросе жизненный цикл и в том, как в него вписываются различные фрагменты кода. Особенно выясните, почему значения вашей модели не будут обновляться, если есть ошибки валидации.
Выберите библиотеку тегов и придерживайтесь ее. Не торопитесь, чтобы определить свои потребности и создать прототипы различных библиотек. Смешивание разных теглибов может нанести серьезный вред вашему психическому здоровью.
Рассмотрите возможность использования лица - это значительно упрощает худшие части разработки JSF. Я делаю проект JSF на основе CMS сейчас без фейсклетов (после того, как сделал с ним проект), и мне кажется, что моя левая рука отсутствует ...
Я настоятельно рекомендую, чтобы кто-нибудь с опытом работы с JSF возглавил ваш первый проект в JSF, даже если это означает оплату подрядчику за 3 месяца. Подход JSF сильно отличается от JSP. Подходите к решению проблем и подходите к ним по-разному.
Рассмотрим следующие библиотеки:
Примите MVC, вам нужно не только знать, что это означает, но и широко использовать его.
Есть два основных шаблона для связывания контроллеров с представлениями.
Каждая страница верхнего уровня имеет контроллер с ограниченным объемом запроса (bean), все проверки и действия страницы используют этот класс. Также используется для фильтрации и упорядочивания модели. Модель будет храниться на нескольких контроллерах уровня сеанса, которые будут обрабатывать взаимодействие с серверной частью (EJB или уровень сохраняемости), эти контроллеры сеанса должны реализовывать бизнес-логику и не знать JSF, HTML или какие-либо технологии представления.
Создавайте контроллеры на основе вашей модели данных, вкладывайте их друг в друга. (Этот пост становится слишком длинным, поэтому я не буду вдаваться в подробности этого).
Каждый:
Хотя бы один человек:
Я использовал реализацию JSf от IBM, и у меня есть несколько комментариев. Это неплохой путь, но вы должны придерживаться «образа жизни» IBM. Они написали свою собственную библиотеку тегов, которая расширяет стандарт JSF. Если вам удастся остаться внутри Rational Application Developer (RAD) (который обновляется не так часто), интеграция иногда бывает ошибочной, но в целом неплохой. Также довольно хорошая интеграция с WebSphere. Если ваш работодатель не играет в гольф с IBM, я думаю, что лучше оставаться максимально ванильным.
Я еще не знаком с «лучшей практикой» для проверки на уровне полей / форм.
То есть проверка JSF в настоящее время ориентирована на проверку одного поля. ИМО, это становится уродливым, когда вы смотрите на сложную проверку уровня кросс-поля / формы.
Старый, но все еще кажется мне точным http://weblogs.java.net/blog/johnreynolds/archive/2004/07/improve_jsf_by_1.html
http://www.jroller.com/robwilliams/entry/jsf_multi_field_validation_not
Выберите хорошую библиотеку компонентов. Не используйте richfaces, я предлагаю вам не использовать jsf, использовать spring mvc, jquery для просмотра и json в остальной архитектуре. но если нужно, используйте простые в использовании и в нем достаточно компонентов.
Вы можете проверить это по следующей ссылке, где вы можете найти интересные статьи
+1 по этому поводу. JSF без Facelets просто кажется сломанным.