मैंने कई डेवलपर्स को इस समस्या के समाधान की तलाश में देखा है: एक अलग WAR से सत्र की जानकारी एक्सेस करना (यहां तक कि एक ही EAR के अंदर भी) - यहां कुछ नमूने दिए गए हैं: किसी भी तरह से सत्र को राज्य में अलग-अलग अनुप्रयोगों के बीच साझा करने का कोई तरीका? , एक अन्य वेब एप्लिकेशन का एक्सेस सत्र , विभिन्न डब्ल्यूएआर फाइलें, साझा संसाधन , टॉमकैट: दो अनुप्रयोगों के बीच डेटा कैसे साझा करें? , टॉमकैट में क्रॉसकॉन्टेक्स विशेषता क्या करती है? क्या यह सत्र साझाकरण को सक्षम करता है? और इसी तरह...
मैंने जो कुछ भी खोजा है, उसमें कंटेनर के आधार पर कुछ विशिष्ट समाधान हैं, लेकिन यह किसी तरह ' विनिर्देश के विपरीत ' है। मैंने जावा ईई विनिर्देश के माध्यम से उत्तर खोजने पर बिना किसी भाग्य के देखा है।
कुछ डेवलपर्स वेब अनुप्रयोगों के बीच युग्मन के बारे में बात करते हैं, लेकिन मैं असहमत हूं। क्या कारण है कि कपलिंग नहीं होने पर उसी EAR के अंदर WAR को रखा जाएगा? उदाहरण के लिए, EJBs को स्थानीय रूप से एक्सेस किया जा सकता है (भले ही उसी EAR के भीतर एक और EJB JAR के अंदर)।
अधिक विशेष रूप से, मेरे WARs में से एक प्रमाणीकरण और प्राधिकरण को संभालता है, और मैं इस जानकारी को अन्य WAR (उसी EAR में) के साथ साझा करना चाहूंगा। मैं पहले भी इसी तरह की समस्याओं पर काम कर चुका हूं, जैसे WARs को JAR की पैकेजिंग करके और उन्हें एक विलार WAR प्रोजेक्ट (WEB-INF / lib) में डालकर। फिर भी मुझे यह समाधान पसंद नहीं है (इसे सर्वलेट नामकरण और इतने पर एक बड़े प्रयास की आवश्यकता है)।
और किसी भी समाधान ने पहले (और सबसे महत्वपूर्ण) प्रश्न का उत्तर नहीं दिया है: WARs सत्र की जानकारी साझा क्यों नहीं कर सकते?