2012-10-12 4 views
5

हमारे एंटरप्राइज़ एप्लिकेशन में सेवा स्तर (व्यापार तर्क और डेटाबेस पहुंच सहित EJB3.0) और वेब स्तरीय (सर्वलेट/जेएसपी) हैं। वितरित मशीनों में जेबॉस एएस 7 में पृथक कान और युद्ध तैनात किए गए हैं।वेब स्तरीय से ईजेबी टियर तक कॉलर की जानकारी कैसे पास करें?

सेवा स्तर में दोनों राज्य और स्टेटलेस ईजेबी शामिल हैं।

हमारे पास विध्वंस विधियों के लिए ईजेबी इंटरसेप्टर है। से लॉग इन किए गए उपयोगकर्ता के लिए उपयोगकर्ता उपयोगकर्ता जानकारी HttpSession में सहेजी गई है (उपयोगकर्ता सत्यापन को डीबी में अपने खाते & पासवर्ड से पूछताछ द्वारा संसाधित किया जाता है)।

अब प्रदर्शन ट्यूनिंग पता करने के लिए जो उपयोगकर्ता उन EJB तरीकों, उपयोगकर्ता जानकारी, तारीख की जानकारी आदि ये निकाला जाएगा कहा जाता है और लॉग इन या हमारे anylize के लिए डीबी में संग्रहीत करता है की जरूरत है।

अब मेरी सवाल यह है:

कैसे EJB स्तरीय में फोन करने वाले की जानकारी भेद करने के लिए?

ईजेबी इंटरसेप्टर ईजेबी विधि के पैरामीटर प्राप्त कर सकता है और जब इसे कहा जाता है। लेकिन हम नहीं जानते कि इसे किसने बुलाया है।

हम जानते हैं कि वेब स्तरीय के साथ ईजेबी टियर को गठबंधन करने के लिए यह बदसूरत है। इसलिए हम HJpSession/HttpRequest को EJB परत तक नहीं पारित करेंगे, जो कि सत्र/अनुरोध ऑब्जेक्ट से हमें जो चाहिए उसे प्राप्त करने में सहायता कर सकता है।

और इतने सारे ईजेबी विधियां हैं कि हम प्रत्येक ईजेबी विधि से वेब से पैरामीटर के रूप में एक TuningInfo (अनुरोध जानकारी, उपयोगकर्ता जानकारी इत्यादि) को पास नहीं कर सकते हैं।

क्या ईजेबी स्तर में कॉलर की जानकारी प्राप्त करना संभव है?

अग्रिम धन्यवाद।

उत्तर

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