यह विषम है। शायद आपका बीन सत्र के दायरे में रखा गया है और/या ब्राउज़र ने कैश से पृष्ठ का अनुरोध किया है। शुरू करने के लिए, आप filter द्वारा सभी गतिशील पृष्ठों के लिए ब्राउज़र कैश को अक्षम करना चाहते हैं जो उचित प्रतिक्रिया शीर्षलेख सेट करता है।
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
HttpServletRequest req = (HttpServletRequest) request;
HttpServletResponse res = (HttpServletResponse) response;
if (!req.getRequestURI().startsWith(req.getContextPath() + ResourceHandler.RESOURCE_IDENTIFIER)) { // Skip JSF resources (CSS/JS/Images/etc)
res.setHeader("Cache-Control", "no-cache, no-store, must-revalidate"); // HTTP 1.1.
res.setHeader("Pragma", "no-cache"); // HTTP 1.0.
res.setDateHeader("Expires", 0); // Proxies.
}
chain.doFilter(request, response);
}
मानचित्र FacesServlet
की सर्वलेट नाम पर या एक ही URL पैटर्न पर इस फिल्टर।
अंतिम, लेकिन कम से कम नहीं, सत्र के दायरे में अपने फॉर्म सेम न रखें। उन्हें अनुरोध में रखें या दायरा देखें।
जेएसएफ गुरु ... बी। आपके उत्तर ने एक बग हल करने में मदद की ... धन्यवाद ... – user684434
आपका स्वागत है। – BalusC
मुझे आज एक ग्लासफ़िश 3.1.1 के साथ एक व्यूस्कोप बीन के साथ मिला। जब मैं वापस जाता हूं और सबमिट बटन दबाता हूं तो दूसरी बार बटन ** कार्रवाई निष्पादित नहीं होती है ** और ब्राउज़र (फ़ायरफ़ॉक्स) पिछले परिणाम के साथ दृश्य प्रदर्शित करता है। बटन कोड ' '। खोज फ़ॉर्म और परिणाम डेटाटेबल एक ही दृश्य में हैं xhtml फ़ाइल (लेकिन फेसलेट के रूप में शामिल)। मैं इसका विश्लेषण करने की कोशिश करूंगा। –
mjn