Подтвердить что ты не робот

Обзор всех связанных с JSF имен и значений параметров контекста web.xml

В web.xml есть несколько JavaServer Faces <context-param>: facelets.REFRESH_PERIOD, facelets.DEVELOPMENT, facelets.SKIP_COMMENTS и т.д. Где я могу найти полный список всех этих параметров?

4b9b3361

Ответ 1

Прежде всего, те, которые начинаются с facelets., не являются параметрами контекста JSF, а Параметры Facelets 1.x. Ранее, в эпоху JSF 1.x, Facelets не интегрировался как часть JSF. Однако, поскольку JSF 2.0, Facelets интегрирован как часть JSF, заменяет устаревший JSP как технологию представления по умолчанию, и большинство параметров контекста Facelets 1.x были переназначены в контекстные параметры JSF 2.x.

Имена реальных параметров JSF начинаются с javax.faces.. Они перечислены в главе 11.1.3 спецификации JSF. Здесь выдержка из спецификации JSF 2.0:

11.1.3 Параметры конфигурации приложения

Контейнеры сервлета поддерживают параметры конфигурации приложения, которые могут быть настроены путем включения элементов <context-param> в дескриптор развертывания веб-приложения. Все реализации JSF необходимы для поддержки следующих имен параметров конфигурации приложения:

  • javax.faces.CONFIG_FILES - Список ограничиваемых контекстом путей ресурсов, в рамках которых реализация JSF будет искать ресурсы для настройки приложений (см. раздел 11.4.4 "Формат ресурсов конфигурации приложения" ) перед загрузкой конфигурации ресурс с именем "/WEB-INF/faces-config.xml" (если такой ресурс существует). Если в списке присутствует "/WEB-INF/faces-config.xml", его следует игнорировать.

  • javax.faces.DATETIMECONVERTER_DEFAULT_TIMEZONE_IS_SYSTEM_TIMEZONE - Если этот параметр установлен, и вызов toLowerCase().equals("true") в представлении String его значения возвращает true, Application.createConverter() должен гарантировать, что значение по умолчанию для часовой пояс для всех javax.faces.convert.DateTimeConverter экземпляры должны быть равны TimeZone.getDefault()вместо "GMT".

  • javax.faces.DEFAULT_SUFFIX - разрешить веб-приложению определять альтернативный суффикс для страниц JSP содержащий содержание JSF. См. Javadocs для символической константы ViewHandler.DEFAULT_SUFFIX_PARAM_NAME для полной спецификации.

  • javax.faces.DISABLE_FACELET_JSF_VIEWHANDLER - Если этот параметр установлен, а вызов toLowerCase().equals("true") в представлении String его значения возвращает true, значение по умолчанию ViewHandler должен вести себя так, как указано в последней версии этой версии 1.2. Любое поведение, указанное в Раздел 7.5 "ViewHandler" и реализован по умолчанию ViewHandler, который относится к обработке запросов для страницы, созданные на языке декларации JavaServer Faces, не должны выполняться во время выполнения.

  • javax.faces.FACELETS_LIBRARIES - Если этот параметр установлен, среда выполнения должна интерпретировать ее как точку с запятой (;) разделенный список путей, начиная с "/" (без кавычек). Время выполнения должно интерпретировать каждую запись в списке как путь относительно корня веб-приложения и интерпретировать файл, найденный на этом пути, в виде библиотеки тегов facelet, соответствующей схема, объявленная в разделе 1.1 "Определение схемы XML для файла ресурсов конфигурации приложения" и раскрытие теги в соответствии с разделом 10.3.2 "Механизм библиотеки тегов Facelet". Время выполнения также должно учитывать facelets.LIBRARIES имя параметра как псевдоним этого имени параметра для обратной совместимости с существующим библиотеки тегов facelets.

  • javax.faces.FACELETS_BUFFER_SIZE - Размер буфера для ответа на ответ, когда ResponseWriterгенерируется. По умолчанию значение равно -1, которое не будет назначать размер буфера для ответа. Это должно быть увеличено если вы используете режим разработки, чтобы гарантировать, что ответ частично не отображается, когда ошибка генерироваться. Среда выполнения также должна учитывать имя параметра facelets.BUFFER_SIZE как псевдоним этого параметра имя для обратной совместимости с существующими библиотеками тегов facelets.

  • javax.faces.DECORATORS - список точек с запятой (;) с разделителями типов javax.faces.view.facelets.TagDecorator, с конструктором без аргументов. Эти декораторы будут загружается, когда первый запрос для представления Facelet VDL попадает в ViewHandler для компиляции страницы. Время выполнения также следует учитывать имя параметра facelets.DECORATORS param как псевдоним этого имени параметра для обратного совместимость с существующими библиотеками тегов facelets.

  • javax.faces.FACELETS_REFRESH_PERIOD - Когда запрашивается страница, какой интервал в секундах должен компилятор проверить изменения. Если вы не хотите, чтобы компилятор проверял изменения после компоновки страницы, используйте значение -1. Установка низкого периода обновления помогает во время разработки иметь возможность редактировать страницы в запущенном режиме application.Среда выполнения также должна учитывать имя параметра facelets.REFRESH_PERIOD как псевдоним этого имя параметра для обратной совместимости с существующими библиотеками тегов facelets.

  • javax.faces.FACELETS_RESOURCE_RESOLVER - Если этот параметр установлен, среда выполнения должна интерпретировать свое значение как полностью квалифицированное имя класса Java-класса, которое расширяет javax.faces.view.facelets.ResourceResolverи имеет публичный конструктор с нулевым аргументом или публичный конструктор с одним аргументом, где тип аргумента ResourceResolver. Если этот параметр установлен и его значение не соответствует этим требованиям, время выполнения должно войдите в сообщение и продолжайте. Если он соответствует этим требованиям и имеет конструктор с одним аргументом, значение по умолчанию ResourceResolver должен быть передан конструктору. Если он имеет конструктор с нулевым аргументом, он вызывается напрямую. В любом случае новый ResourceResolver заменяет старый. Время выполнения также должно учитывать facelets.RESOURCE_RESOLVER имя параметра как псевдоним этого имени параметра для обратной совместимости с существующие библиотеки тегов facelets.

  • javax.faces.FACELETS_SKIP_COMMENTS - Если этот параметр установлен, а вызов toLowerCase().equals("true") в представлении String его значения возвращает true, время выполнения должно убедитесь, что любые комментарии XML на исходной странице Facelets не доставляются клиенту. Время выполнения также должно рассмотрите имя параметра facelets.SKIP_COMMENTS как псевдоним этого имени параметра для обратной совместимости с существующими библиотеками тегов facelets.

  • javax.faces.FACELETS_SUFFIX - разрешить веб-приложению определять альтернативный суффикс для Facelet XHTML-страницы, содержащие содержимое JSF. См. Javadocs для символической константы ViewHandler.FACELETS_SUFFIX_PARAM_NAME для полной спецификации.

  • javax.faces.FACELETS_VIEW_MAPPINGS - Если этот параметр установлен, среда выполнения должна интерпретировать ее как точку с запятой (;) разделенный список строк, который используется для принудительного объявления того, что определенные страницы в приложении должны интерпретироваться как используя Facelets, независимо от их расширения. Время выполнения также должно учитывать facelets.VIEW_MAPPINGSparam name как псевдоним этого имени параметра для обратной совместимости с существующими приложениями facelets. См. javadocs для символической константы ViewHandler.FACELETS_VIEW_MAPPINGS_PARAM_NAME для полного спецификация.

  • javax.faces.FULL_STATE_SAVING_VIEW_IDS - Время выполнения должно интерпретировать значение этого параметра как список идентификаторов, разделенных запятыми, каждый из которых должен иметь свое состояние, сохраненное с помощью механизма сохранения состояния указанных в JSF 1.2.

  • javax.faces.INTERPRET_EMPTY_STRING_SUBMITTED_VALUES_AS_NULL - Если этот параметр установлен, и вызов toLowerCase().equals("true") в представлении String его значения возвращает true, любой реализация UIInput.validate() должна выполнять следующие дополнительные действия. Если значение параметра контекста javax.faces.INTERPRET_EMPTY_STRING_SUBMITTED_VALUES_AS_NULL равно true (игнорируя регистр), а UIInput.getSubmittedValue() возвращает вызов String с нулевой длиной UIInput.setSubmittedValue(null) и продолжить обработку с использованием null в качестве текущего переданного значения

  • javax.faces.LIFECYCLE_ID - идентификатор жизненного цикла экземпляра Lifecycle, который будет использоваться при обработке Запросы JSF для этого веб-приложения. Если не указано, экземпляр по умолчанию JSF, указанный LifecycleFactory.DEFAULT_LIFECYCLE.

  • javax.faces.PARTIAL_STATE_SAVING - Параметр init ServletContext, с которым выполняется время выполнения определить, следует ли использовать механизм сохранения частичного состояния. Если undefined, среда выполнения должна определять уровень версии приложения.

    • Для приложений с версией 1.2 и ниже среда выполнения не должна использовать механизм сохранения частичного состояния.
    • Для приложений с версией 2.0 и выше среда выполнения должна использовать механизм сохранения частичного состояния.

    Если этот параметр определен, а приложение версии с версией 1.2 и ниже, среда выполнения не должна использовать частичный государственный механизм экономии. В противном случае, если этот параметр определен и вызывает toLowerCase().equals("true") на Stringпредставление его значения возвращает true, среда выполнения должна использовать механизм частичного состояния. В противном случае частичное состояние не должен использоваться механизм сохранения.

  • javax.faces.PROJECT_STAGE - читаемая пользователем строка, описывающая, где это конкретное приложение JSF находится в жизненного цикла разработки программного обеспечения. Допустимые значения: "Development", "UnitTest", "SystemTest" или "Production", соответствующий константам перечисления класса javax.faces.application.ProjectStage. Также можно установить это значение через JNDI. См. Javadocs для Application.getProjectStage().

  • javax.faces.STATE_SAVING_METHOD - Местоположение, в котором сохраняется информация о состоянии. Допустимые значения: "server" (обычно сохраняется в HttpSession) и "client" (обычно сохраняется как скрытое поле в следующей форме Отправить). Если не указано, необходимо использовать значение по умолчанию "server".

  • javax.faces.VALIDATE_EMPTY_FIELDS - Если этот параметр установлен, и вызов toLowerCase().equals("true") в представлении String его значения возвращает true, все отправленные поля будут проверены. Это необходимо, чтобы позволить валидатору модели принимать решение о том, являются ли нулевые или пустые значения допустимый в текущем приложении. Если значение false, пустые или пустые значения не будут переданы валидаторам. Если значением является строка "auto", среда выполнения должна проверить, присутствует ли JSR-303 Beans Validation в текущей Окружающая среда. Если это так, время выполнения должно выполняться так, как если бы было указано значение "true". Если JSR-303 Beans Проверка отсутствует в текущей среде, время выполнения больше всего работает так, как если бы было указано значение "false". Если параметр не задан, система должна вести себя так, как если бы параметр был задан со значением "auto".

  • javax.faces.validator.DISABLE_DEFAULT_BEAN_VALIDATOR - Если этот параметр установлен, и вызов toLowerCase().equals("true") в представлении String его значения возвращает true, время выполнения не должно автоматически добавить валидатор с идентификатором validator равным значению символьной константы javax.faces.validator.VALIDATOR_ID в список валидаторов по умолчанию. Установка этого параметра в значение true будет приводят к отключению автоматической установки Bean Проверка на каждый компонент ввода во всех представлениях в приложение, хотя ручная установка все еще возможна.

Реализации JSF могут выбрать поддержку дополнительных параметров конфигурации, а также дополнительные механизмы для настроить реализацию JSF; однако приложения, которые полагаются на эти объекты, не будут переноситься на другие JSF реализации.

Как вы можете прочитать в последнем абзаце, реализации JSF могут также иметь свой собственный набор параметров контекста. Для Mojarra, которые начинаются с com.sun.faces., которые перечислены в этом блоге: Какие параметры контекста Mojarra доступны? Для MyFaces, которые начинаются с org.apache.myfaces. которые также перечислены на их собственном сайте: Документация MyFaces - Параметры веб-контекста.