2009-06-08 12 views
13

हमारा जावा ऐप एक वेबलॉगिक जेएमएस संदेश ब्रिज के माध्यम से एमक्यू सीरीज़ कतारों को लिखता है। वास्तविक एमक्यू सीरीज़ कनेक्शन/कतार विवरण एमक्यू सीरीज में स्थित हैं। ऐप सर्वर पर बाइंडिंग फ़ाइल। मैंने कभी भी बाइंडिंग फ़ाइल के आसपास अपना सिर नहीं मिला और सभी प्रविष्टियों का क्या मतलब है। क्या कोई इस फ़ाइल को समझने के लिए मार्गदर्शन प्रदान कर सकता है?एमक्यू सीरीज़ बाइंडिंग फाइलों को समझना

उत्तर

35

। बाइंडिंग फ़ाइल को संबोधित करने से पहले, हमें थोड़ा सा कदम उठाने और जेएनडीआई - जावा नामकरण और निर्देशिका इंटरफ़ेस - और इसका उपयोग जेएमएस द्वारा कैसे किया जाता है। कतार, विषय और विभिन्न प्रकार के कनेक्शन फैक्ट्री सभी रन-टाइम जेएमएस ऑब्जेक्ट्स विधियों और विशेषताओं के साथ हैं। लेकिन आप उन्हें पूर्व-परिभाषित कर सकते हैं और उन्हें एक रजिस्ट्री में स्टोर कर सकते हैं जहां JMS एप्लिकेशन JNDI लुकअप का उपयोग करके उन्हें पुनर्प्राप्त कर सकता है।

यह सहायक है क्योंकि ऑब्जेक्ट्स सिक्कों की तरह हैं कि उनके पास एक जेएमएस पक्ष और प्रदाता-विशिष्ट पक्ष है। जेएमएस पक्ष पर, किसी भी प्रशासित वस्तु के बारे में दिखता है। अंतर्निहित परिवहन प्रदाता के बावजूद, कनेक्शन कनेक्शन में एक ही तरीके और गुण होते हैं। हालांकि, प्रदाता-विशिष्ट पक्ष पर, प्रशासित वस्तुएं एक परिवहन प्रदाता से अगले तक बहुत अलग दिखती हैं। उदाहरण के लिए, वेबस्फेयर एमक्यू ट्रांसपोर्ट के साथ उपयोग किए गए कनेक्शन फैक्ट्री में कतार प्रबंधक के लिए एक विशेषता होगी। किसी अन्य परिवहन प्रदाता के पास "कतार प्रबंधक" नहीं है, इसलिए यह विशेषता केवल WMQ संदर्भ में मान्य है।

प्रशासित वस्तुओं के दो पहलू "गोंद" हैं जो जेएमएस को परिवहन प्रदाता से स्वतंत्र रूप से काम करने की अनुमति देते हैं। आपके कोड में आपको केवल कनेक्शन कनेक्शन देखना होगा और आपको विधि कॉल करने के लिए उपयुक्त ऑब्जेक्ट मिलता है। कवर के तहत, प्रदाता के जेएमएस कक्षा प्रदाता-विशिष्ट ऑब्जेक्ट विशेषताओं का उपयोग प्रदाता-विशिष्ट कॉल में जेनेरिक जेएमएस एपीआई कॉल को कन्वर्ट करने के संदर्भ में संदर्भ प्रदान करने के लिए करते हैं। इस प्रकार कनेक्शन ऑब्जेक्ट जो आप WMQ CONNECT कॉल में परिणामों को तुरंत चालू करते हैं जो QMgr नाम, होस्ट, पोर्ट, चैनल और अन्य पैरामीटर को निर्दिष्ट करता है।

ठीक है, मैंने। बाइंडिंग फ़ाइल पर जाने का वादा किया था। मैंने पहले कहा था कि जेएनडीआई लुकअप "रजिस्ट्री" के खिलाफ था और इसका आमतौर पर एलडीएपी या इसी तरह का मतलब होता है। लेकिन सूर्य ने जेएनडीआई को जेएमएस की तरह इंजीनियर किया जिसमें एक ऐसा एपीआई है जो आपका प्रोग्राम उपयोग करता है और एक एसपीआई या सेवा प्रदाता इंटरफ़ेस जिसका उपयोग रजिस्ट्री द्वारा किया जाता है। इसलिए, हालांकि JNDI एलडीएपी में लागू किया जा सकता है, ऐसा कुछ भी नहीं है जो कहता है कि एलडीएपी में लागू किया जाना चाहिए। बॉक्स के बाहर दिए गए मूल कार्यान्वयन में से एक स्थानीय फाइल सिस्टम को रजिस्ट्री के रूप में उपयोग करना था। इस कार्यान्वयन में, रूट संदर्भ एक फ़ाइल फ़ोल्डर है। प्रत्येक संदर्भ या तो एक और उप-संदर्भ (एक और फ़ाइल फ़ोल्डर) या ऑब्जेक्ट परिभाषाओं को स्टोर कर सकता है। आम तौर पर मूल संदर्भ के लिए एक फ़ोल्डर होता है और सभी वस्तुओं को उस स्तर पर परिभाषित किया जाता है। ऑब्जेक्ट परिभाषाओं वाली फ़ाइल है ... आपने अनुमान लगाया है ...। बाइंडिंग फ़ाइल।

। बाइंडिंग फ़ाइल में ऑब्जेक्ट्स को नाम/प्रकार/वैल्यू ट्रिपलेट में दर्शाया गया है। इसलिए प्रत्येक। बाइंडिंग फ़ाइल में आमतौर पर कई ऑब्जेक्ट होते हैं। प्रत्येक ऑब्जेक्ट में कई विशेषताएं हैं। प्रत्येक विशेषता का नाम, एक मान और चर का प्रकार होता है जो मान रखता है। । बाइंडिंग फ़ाइल पर हैंडल प्राप्त करने का सबसे अच्छा तरीका यह है कि इसे क्रमबद्ध करें जो सभी ऑब्जेक्ट्स और उनके गुणों को एकसाथ रखे और इसे अधिक मानव-पठनीय बना देगा। संभावित गुणों की सूची के लिए, the manual देखें।

बेशक,। बाइंडिंग फ़ाइल को एक संकलित आर्टिफैक्ट माना जाता है और मानव पठनीय होने का इरादा नहीं है। आईबीएम .bindings फ़ाइल जेनरेट और पढ़ने के लिए JMSAdmin टूल प्रदान करता है। आप एक .bindings फ़ाइल में प्रशासित वस्तुओं का प्रबंधन करने के लिए WMQ एक्सप्लोरर का भी उपयोग कर सकते हैं। इन्हें ऊपर दिए गए मैनुअल में भी चर्चा की जाती है। डेवलपर वर्क्स here में एक (कुछ कहते हैं) अच्छा ट्यूटोरियल भी है।

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