2012-04-10 32 views
11

Sự hiểu biết của tôi về JSF vẫn còn nông cạn.JSF 2.0 RenderResponse và ResponseComplete

Tôi đọc tài liệu và theo javadoc của FacesContext

có là renderResponse và ResponseComplete cho phép bạn ngắn mạch vòng đời.

Tôi hiện đang bối rối .. khi nào bạn sử dụng cái này qua người kia trong tình huống thực tế?

Cảm ơn

Trả lời

25

Sử dụng FacesContext#renderResponse() nếu bạn muốn chuyển sang giai đoạn phản hồi kết xuất ngay bây giờ. Bạn thấy điều này thường kết hợp với các giá trị của trình lắng nghe thay đổi giá trị chạy trong giai đoạn xác nhận hợp lệ và nên bỏ qua các giá trị mô hình cập nhật và gọi các pha hành động.

Sử dụng FacesContext#responseComplete() để báo hiệu JSF rằng bạn đã xử lý phản hồi mình và JSF do đó không cần trả lại phản hồi. Bạn thấy điều này thường kết hợp với các phương thức tác vụ bean sao lưu ghi một tệp tải xuống phản hồi. Điều này sẽ đảm bảo rằng JSF không nối thêm tệp tải xuống với nội dung của HTML được hiển thị có thể bị tải xuống bị hỏng hoặc ngoại lệ bất hợp pháp của tiểu bang.

Các vấn đề liên quan