द्वारा संरक्षित है, मेरे पास एक JSF पृष्ठ है जो j_security_check
द्वारा संरक्षित नहीं है। मैं निम्नलिखित चरणों का पालन करता हूं:ViewExpiredException AJAX अनुरोध पर नहीं फेंक दिया गया है यदि JSF पृष्ठ j_security_check
- ब्राउज़र में जेएसएफ पृष्ठ खोलें।
- सर्वर को पुनरारंभ करें।
- AJAX कॉल शुरू करने के लिए जेएसएफ पृष्ठ पर कमांड बटन पर क्लिक करें।
फायरबग से पता चलता है कि ViewExpiredException
अपेक्षित के रूप में उठाया गया है।
पोस्ट:
javax.faces.ViewState=8887124636062606698:-1513851009188353364
प्रतिक्रिया:
<partial-response> <error> <error-name>class javax.faces.application.ViewExpiredException</error-name> <error-message>viewId:/viewer.xhtml - View /viewer.xhtml could not be restored.</error-message> </error> </partial-response>
हालांकि, (मेरे लिए एक बार मैं j_security_check
द्वारा संरक्षित और इसके बाद के संस्करण, अजीब दिए गए उन्हीं चरणों को पूरा किए जाने की पेज कॉन्फ़िगर) ViewExpiredException
अब उठाया नहीं गया है। इसके बजाय, प्रतिवाद सिर्फ एक नया दृश्य राज्य है।
पोस्ट:
javax.faces.ViewState=-4873187770744721574:8069938124611303615
प्रतिक्रिया:
<partial-response> <changes> <update id="javax.faces.ViewState">234065619769382809:-4498953143834600826</update> </changes> </partial-response>
किसी की मदद कर सकते हैं मुझे यह पता लगा? मैं उम्मीद करता हूं कि यह अपवाद उठाए ताकि मैं उस अपवाद को संसाधित कर सकूं और एक त्रुटि पृष्ठ दिखा सकूं। अब यह सिर्फ एक नया व्यूस्टेट के साथ प्रतिक्रिया करता है, मेरा पृष्ठ किसी भी दृश्य प्रतिक्रिया के बिना अटक गया है।
धन्यवाद बलससी। मेरा दिन बचाया –
आपका स्वागत है। – BalusC
ओह एक अतिरिक्त सवाल, मैं सोच रहा हूं कि निम्नलिखित क्यों होता है: यदि मैं context.getExternalContext() का उपयोग करता हूं। रीडायरेक्ट (loginURL), यह वास्तव में मुझे लॉगिन पेज पर रीडायरेक्ट करता है। लेकिन लॉग इन करने के बाद, एक एक्सएमएल फ़ाइल, व्यूस्टेट के साथ इसकी सामग्री के रूप में, ब्राउज़र द्वारा प्रदर्शित की जाती है। एक्सएमएल फ़ाइल मेरे प्रश्न में पोस्ट की गई दूसरी एक्सएमएल फ़ाइल के समान ही है। अगर मैं context.getExternalContext() का उपयोग करता हूं। रीडायरेक्ट (homepageURL), सभी ठीक काम करता है। यह मुझे लॉगिन पेज ले जाएगा। लॉग इन करने के बाद, होम पेज प्रदर्शित किया जाएगा। –