2009-04-20 7 views
5

मैं टॉमकैट में एक जे 2 ईई वेब एप्लिकेशन चला रहा हूं, और हाल ही में मुझे एप्लिकेशन में मीट्रिक जोड़ने के साथ काम सौंपा गया है। सत्र समाप्त होने पर, और फिर डेटाबेस में मीट्रिक अपलोड करने के लिए मैं सत्रसूची का उपयोग कर रहा हूं। मेरा सत्र टाइमआउट मेरे web.xml में 30 मिनट में सेट है, और मैं प्रोग्राम को कहीं भी सत्र को अमान्य नहीं कर रहा हूं। अक्सर परीक्षण के लिए लॉग इन करने में 1 5-10 मिनट की अवधि के दौरान, मुझे डेटाबेस में अपलोड किए गए मीट्रिक के 3 या 4 सेट दिखाई देंगे, सभी अलग-अलग सत्र आईडी के साथ।यादृच्छिक सत्र अमान्यता

वेब.xml और session.invalidate() के अलावा, टॉमकैट में एक सत्र को नष्ट करने का और क्या कारण हो सकता है? अपवाद? क्या टोमकैट कभी यादृच्छिक रूप से सत्रों को अमान्य कर देगा?

+0

क्या आप लगातार सत्र का उपयोग करते हैं? – trunkc

+0

मैं लगातार सत्र का उपयोग नहीं कर रहा हूं। – jconlin

+0

आपके लॉगिंग को केवल एक सत्र बनाना चाहिए, आपने इसका निर्माण 3 या 4 का उल्लेख किया है। क्या आप मेट्रिक्स को तब ही जारी रखते हैं जब सत्र नष्ट हो जाता है या जब इसे बनाया जाता है? –

उत्तर

4

संभवतः आपके वेब ब्राउजर ने वेबपैप्लिकेशन के अनुरोध पर सत्र कुकी नहीं भेजने का निर्णय लिया है, जहां आपके एप्लिकेशन ने एक की अपेक्षा की होगी। मैंने यह एक अपाचे रीराइट नियम के साथ देखा है; सत्र-कुकी पथ के बाहर एक यूआरएल वेब-एप्लिकेशन पर रीडायरेक्ट किया गया था। वहाँ (गलत हो सकता है विवरण) folowing हुआ की तरह कुछ:

  • अपने वेब आवेदन एप्लिकेशन पर/स्थित था/
  • इस प्रकार सत्र कुकी में इस पथ/ऐप्स/
  • एक पेज ही था WebApplication
  • ब्राउज़र /img/magic.jpeg को नहीं भेजा सत्र कुकी/ऐप्स/createImage को (पथ से मेल नहीं खाती)
  • सर्वर अनुरोध (आंतरिक) को रीडायरेक्ट इस छवि के लिए अपने अनुरोध में भेजा गया था? जादू
  • वेब एप्लिकेशन को सत्र कुकी प्राप्त नहीं हुई, इसलिए इसने एक नया सत्र

यदि आप नए सत्रों के लिए प्रारंभिक URL लॉग करते हैं तो यह देखने में सक्षम होना चाहिए कि यह आपकी समस्या का कारण बनता है या नहीं।

0

शायद यह आपके सर्वर पर क्या हो रहा है, लेकिन यदि सिस्टम समय सर्वर पर आगे सेट किया गया है, तो यह सत्रों को 30 मिनट के "विलुप्त समय" से तेज़ी से समाप्त कर सकता है। टॉमकैट - कम से कम 5.5 के रूप में - सत्रों की अवधि समाप्त करने के लिए "घड़ी का समय" इस्तेमाल किया जाता है, इसलिए सिस्टम घड़ी को बदलना सत्र जीवनकाल को प्रभावित करेगा।

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

  • कोई संबंधित समस्या नहीं^_^