В прошлом я программировал Java и JSP, но я новичок в Java Server Faces и хочу знать, существует ли набор лучших практик для разработки JSF.
Каковы наилучшие практики для JSF?
Ответ 1
Некоторые советы: Поймите запрос JSF жизненный цикл и в котором в него вставляются различные фрагменты кода. Особенно узнайте, почему ваши значения модели не будут обновляться, если есть ошибки проверки.
Выберите библиотеку тегов, а затем придерживайтесь ее. Потратьте время, чтобы определить свои потребности и прототип разных библиотек. Смешивание разных taglib может нанести серьезный вред вашему психическому здоровью.
Ответ 2
Я бы настоятельно рекомендовал, чтобы кто-то из опытных в JSF возглавил ваш первый проект в JSF, даже если это означает оплату подрядчика в течение 3 месяцев. Подход JSF очень отличается от JSP. То, как вы приближаетесь и решаете проблемы, очень отличается.
Библиотеки
Рассмотрим следующие библиотеки:
Архитектура
Embrace MVC вам нужно не только знать, что это значит, но и широко использовать.
Существует два основных шаблона для сопоставления контроллеров с представлениями
Dot Net Style, один контроллер запроса на просмотр
На каждой странице верхнего уровня есть контроллер области запроса (bean), все проверки и действия страницы используют этот класс. Также используется для фильтрации и заказа модели. Модель будет храниться на нескольких контроллерах уровня сеанса, которые будут обрабатывать разговоры с внутренними (EJB или уровень сохранения), эти контроллеры сеансов должны внедрять бизнес-логику и не иметь знаний о JSF, HTML или любой технологии презентации.
Контроллеры - это уровень сеанса
Создайте контроллеры на основе вашей модели данных, вложите их друг в друга. (Этот пост слишком длинный, поэтому я не буду вдаваться в гайки и болты).
Требуемое знание
Все:
- Жизненный цикл
- MDC
- Разработка на основе компонентов
- Теги в h: и f:
По меньшей мере одно лицо:
- Создание пользовательских компонентов
- Ограничения на JSF (кнопка возврата, случайная навигация и т.д.)
- Отладка 3-го партийные библиотеки (по крайней мере один человек должно быть удобно вырываться отладчик и переход в внедрение JSF (проще всего с реализация с открытым исходным кодом, например MyFaces))
Ответ 3
Рассмотрите возможность использования facelets - это значительно упрощает худшие части развития JSF. Теперь я делаю проект JSF на основе CMS без масок (после выполнения проекта с ним), и мне кажется, что моя левая рука отсутствует....
Ответ 4
- Добавить свой голос за личность. Недавно я обновил проект для использования facelets, и он решает некоторые большие проблемы с jsf, специально предоставив вам достойную систему шаблонов прямо из коробки и позволяя вам использовать стандартный html, когда это уместно, без его обертывания в "дословном" -tags.
- RestFaces - это решение проблемы get/post, о которой многие жалуются. Он также хорошо документирован и прост в использовании.
- Не используйте для многих taglib. Это делает работу намного сложнее при обновлении.
- SEAM собирает многие из лучших практик JSF, но я еще не использовал его, поэтому я не могу рекомендовать его, просто рекомендую вам взглянуть на него.
Ответ 5
Я использую реализацию JSf для IBM и имею некоторые комментарии. Это неплохой путь, но вам нужно посвятить себя "жизненному пути" IBM. Они написали собственный тег lib, который расширяет стандарт JSF. Если вам удастся остаться внутри Rational Application Developer (RAD) (который часто не обновляется), интеграция иногда бывает глючной, но в целом достойной. Также интеграция с WebSphere довольно хороша. Если ваш работодатель не играет в гольф с IBM, я думаю, что лучше оставаться как ваниль, насколько это возможно.
Ответ 6
Я еще не знаю "лучшей практики" для проверки уровня поля/формы.
То есть, проверка 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
Ответ 7
Вы можете проверить его в следующей ссылке, в которой вы могли бы найти интересные статьи
Ответ 8
Выберите хорошую библиотеку компонентов. Не используйте richfaces, я предлагаю вам не использовать jsf, использовать spring mvc, jquery fro view и json в архитектуре покоя. но если вам нужно, используйте простые интерфейсы, которые легко использовать и имеют достаточно компонентов.