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

Для чего используется FacesContext?

Для чего используется FacesContext?

И где именно это реализовано?

4b9b3361

Ответ 1

Цитата из главы 6.1 Спецификация JSF 2.0:

FacesContext

JSF определяет javax.faces.context.FacesContextабстрактный базовый класс для представления вся контекстная информация связанные с обработкой входящего запроса и создания соответствующий ответ.

A FacesContextэкземпляр создается JSF реализации, до начала жизненного цикла обработки запроса обратитесь к методу getFacesContext FacesContextFactory, как описано в Раздел 6.6 "FacesContextFactory".

Когда жизненный цикл обработки запроса была завершена, JSF реализация вызовет выпуск метод, который дает JSF реализации освободить любые приобретенные ресурсы, поскольку а также для объединения и переработки Экземпляры FacesContext, а не создавая новые для каждого запроса.

Он указан в классе javax.faces.context.FacesContext и в Mojarra реализован в классе com.sun.faces.context.FacesContextImpl и в MyFaces, реализованном в классе org.apache.myfaces.context.servlet.FacesContextImpl.

См. также:

Ответ 2

FacesContext содержит всю информацию о состоянии запроса, связанную с обработкой одного запроса JavaServer Faces, и рендеринг соответствующего ответа. Он передается и может быть изменен каждой фазой жизненного цикла обработки запроса.

Экземпляр FacesContext связан с конкретным запросом в начале обработки запроса вызовом метода getFacesContext() экземпляра FacesContextFactory, связанного с текущим веб-приложением. Экземпляр остается активным до тех пор, пока не будет вызван его метод release(), после чего дополнительные ссылки на этот экземпляр не будут разрешены. Хотя экземпляр FacesContext активен, он не должен ссылаться ни на какой поток, кроме того, на котором используется контейнер сервлетов, выполняющий это веб-приложение, для обработки этого запроса.

ссылка:

http://docs.oracle.com/javaee/6/api/javax/faces/context/FacesContext.html

Ответ 3

FacesContext является точку привязки для подключения к рамочной и Контейнерные услуги. Например, вы можете получить базовые объекты httprequest и контекстные объекты для запроса страницы, который доступ к вашей поддержке bean, проходя через Facescontext. Что включает контекст безопасности, в котором выполняется запрос веб-страницы.

Общая философия JSF заключается в том, что компоненты, предоставляемые пользователем должны быть достаточно абстрактными, чтобы не зависеть от таких деталей, как они работают в традиционной среде JSP или что-то еще экзотика, поэтому, если в bean есть ссылка Facescontext, она потенциальный признак плохого дизайна, тем более что beans ожидается есть вещи, введенные в них, а не искать вещи.

Однако иногда по той или иной причине удобно достигать из резервной копии bean и получить отдаленную информацию, так что это если вам это нужно.

Ссылка: Что такое контекстный объект Facescontext

Ответ 4

Новый экземпляр FacesContext создается с каждым новым запросом. Основная задача FacesContext - предоставить всю информацию о конкретном запросе, с которым он связан. Например: чтобы добавить сообщения после определенного подтверждения или отказа преобразования, вы можете просто добавить сообщение в FacesContext, который в конечном итоге отобразит нужное сообщение на экране. Также вы можете взглянуть и даже остановить жизненный цикл JSF в любой момент, позвонив

    FacesContext.responseComplete();