मुझे टॉमकैट 5.5 और टॉमकैट 6.0 सर्वर के साथ यह अजीब समस्या है। मेरे पास दो वेब एप्लिकेशन हैं जो टोमकैट पर स्थापित किए जाएंगे। जब टोमकैट शुरू होता है तो इन दो वेब अनुप्रयोगों को भी एक साथ शुरू किया जाता है लेकिन कभी-कभी एक वेब एप्लिकेशन प्रारंभ करने में विफल रहता है क्योंकि एक एप्लिकेशन में इनिट विफलता के कारण किसी अन्य एप्लिकेशन को चलते समय classnotfoundexception त्रुटियां मिल रही हैं। टॉमकैट 7.0 में एप्लिकेशन ठीक चल रहा है भले ही अन्य एप्लिकेशन प्रारंभ करने में विफल रहा हो।टॉमकैट 5.5 में क्लास नॉटफाउंड अपवाद त्रुटि और टॉमकैट 6.0
कुछ डिबगिंग के बाद मुझे पता चला कि क्रिस्टल.जर नामक एक जार है जो दोनों अनुप्रयोगों के वेब-इंफ/lib फ़ोल्डर में है। मैंने जार को टॉमकैट के सामान्य/lib फ़ोल्डर में स्थानांतरित कर दिया है, फिर उसने ठीक काम करना शुरू कर दिया। मैं जानना चाहता हूं कि यह टॉमकैट 7.0 में क्यों ठीक काम नहीं कर रहा है, टॉमकैट 5.x और टॉमकैट 6.x संस्करणों में नहीं। क्या इन संस्करणों के बीच क्लासलोडिंग आर्किटेक्चर में कोई बदलाव है?
धन्यवाद
EDIT1: पुस्तकालय दोनों अनुप्रयोगों वेब-INF \ lib निर्देशिका के स्थान में था और वे बाहरी DLLS के साथ कोई निर्भरता है। अभी मैं टॉमकैट 5.5 क्लासलोडर आर्किटेक्चर के बारे में पढ़ता हूं और यह पता चला कि हर वेब एप्लिकेशन का अपना वर्ग लोडर है। WEB-INF \ lib फ़ोल्डर और कक्षा फ़ोल्डर में लाइब्रेरी इस क्लासलोडर में लोड हो जाएंगी। सामान्य निर्देशिका के तहत जो भी पुस्तकालय संग्रहित किया जाता है उसे साझा क्लासलोडर में रखा जाएगा। फिर इस पुस्तकालय को वेब अनुप्रयोग के अलग-अलग वर्ग लोडर में अलग से लोड किया जाना चाहिए। यहां तक कि यदि कोई वेब एप्लिकेशन अन्य वेब एप्लिकेशन शुरू करने में विफल रहता है तो भी स्वतंत्र रूप से काम करना चाहिए। यही कारण है कि मैं अजीब महसूस किया और furthur की जांच करने की जरूरत है।
तो आप बस में वृद्धि हुई है MaxPermSize, है ना? –