पर jamon.war का उपयोग करके मैं JAMon का उपयोग कर रहा हूं, और मैं अपने ऐप की निगरानी के लिए jamon.war
का उपयोग करना चाहता हूं। हालांकि, मेरे ऐप और jamon.war
ऐप में अलग-अलग क्लासलोडर हैं, और इसलिए वे एक दूसरे के स्थैतिक चर नहीं देखते हैं (जहां डेटा संग्रहीत किया जाता है, जहां तक मैं समझता हूं)। जब मैं अपने ऐप में MonitorFactory.getReport()
पर कॉल करता हूं तो मुझे उचित डेटा मिल रहा है।tomcat
यह काम कैसे प्राप्त करें?
दाएं, यदि आप विभिन्न अनुप्रयोगों के बीच एक जार साझा करते हैं, तो आपको इसे tomcat/lib निर्देशिका के माध्यम से करना चाहिए। प्रत्येक वेबपैप वास्तव में अपने स्वयं के क्लासलोडर है, लेकिन आप उन्हें सामान्य क्लासलोडर के माध्यम से संचार में डाल सकते हैं। एक नज़र डालें [यहां] (http://tomcat.apache.org/tomcat-6.0-doc/class-loader-howto.html)। – javanna
आप एह कैश साझा किए गए 'कैशमैनगर' (टॉमकैट में सभी WARs के लिए एक ही प्रबंधक) के साथ एक ही समस्या का निरीक्षण कर सकते हैं - यदि प्रत्येक एप्लिकेशन के साथ 'ehcache.jar' बंडल किया गया है, तो प्रत्येक व्यक्ति का अपना' कैशमेनगर 'होगा क्योंकि EhCache ' स्थिर 'फ़ील्ड प्रबंधक साझा करने के लिए ... एक बार' ehcache.jar' '/ lib' निर्देशिका में रखा गया है, दोनों एप्लिकेशन एक ही 'कैशमेनगर' और कैश साझा करते हैं। –