2012-05-29 11 views
5

मैं जब HttpServletRequest.getSession(false)HttpServletRequest.getSession (झूठा): यह कब वापस आ जाता है?

भी बुला पता करने के लिए एक "अशक्त" उम्मीद करने के लिए जब चाहते हैं: HttpSession पर वहाँ अच्छा ट्यूटोरियल हैं? मैं विवरण प्राप्त करना चाहता हूं: कब अमान्य()? क्या नतीजे सामने आए? क्या मुझे यह जांचने की ज़रूरत है कि लौटा हुआ एचटीपीशन वैध है या नहीं? ... < == कृपया एक टिप्पणी में उत्तर दें।

+0

मैंने ठीक उसी साइट के लिए किया जब मुझे एहसास हुआ कि कुछ खोज इंजन थे जो मेरे robots.txt का सम्मान नहीं करते थे। संक्षेप में, आप पैरामीटर के रूप में झूठ के साथ getSession (बूलियन) कहते हैं। अगर कोई है, या शून्य है, तो कोई सत्र नहीं है, तो यह सत्र देता है। फिर आप सत्र पर .getAttributeNames() को कॉल करते हैं, जो एक अमान्य सत्र (टाइम आउट, बंद) पर एक IllegalStateException फेंकता है। – 0xCAFEBABE

उत्तर

4

आपको व्यावहारिक रूप से शून्य मूल्य की अपेक्षा नहीं करनी चाहिए। जैसा कि प्रलेखन कहता है, यदि अनुरोध के लिए कोई सक्रिय सत्र नहीं है (आमतौर पर, आप उस अनुरोध की फ़िल्टर श्रृंखला में इसकी जांच करेंगे), एक सत्र बनाया जाएगा। यदि आपको इससे कोई शून्य मूल्य मिलता है, तो मैं डरता हूं कि अंतर्निहित ओएस में कोई समस्या है: सत्र को जन्म देने के लिए पर्याप्त स्मृति नहीं होगी।

+0

यहां एक उदाहरण है जो मुझे इस प्रश्न से पूछने के लिए लाया: http://stackoverflow.com/questions/3080203/how-could-randomly-my- सत्र-is-null। मैं सोच रहा हूं कि इस तरह के अधिक मामले हैं या नहीं। क्या दूसरों से सहमत हैं कि सत्र के लिए फ़िल्टर जांच करना एक अच्छा विचार है? – AndrewBourgeois

+0

पोस्टर के रूप में, उन्होंने getSession (सत्य) की कोशिश की, जो मेरे अनुभव और दस्तावेज़ीकरण के अनुसार सत्र बनायेगा, अगर यह पहले से मौजूद नहीं है। यदि यह नहीं बनाया गया है, तो मैं दांव दूंगा कि यह सीमित संसाधनों या किसी अन्य समस्या के साथ एक समस्या है (जैसा कि एक पोस्टर सुझाया गया है, शायद एक एंटी-फ़िशिंग तकनीक), लेकिन मैं उल्लिखित एप्लिकेशन सर्वर में से किसी से परिचित नहीं हूं (बिल्ला)। – 0xCAFEBABE

+0

ठीक है तो सामान्य परिस्थितियों में (आपका चित्र पर्याप्त संसाधनों के साथ चल रहा है ...), आपको शून्य नहीं मिलना चाहिए। काफी अच्छा (मैं इसे एक दिन के लिए खोल दूंगा ताकि अन्य आवश्यक होने पर टिप्पणी कर सकें)। – AndrewBourgeois

संबंधित मुद्दे