Java API for XML Messaging
एक्स. एम. एल. मैसेजिंग (जे. ए. एक्स. एम.) के लिए जावा ए. पी. आई. वितरित सॉफ्टवेयर अनुप्रयोगों को एक्स. एम. एल. (और एस. ओ. ए. पी.) का उपयोग करके संवाद करने में सक्षम बनाता है। जेएएक्सएम एसिंक्रोनस और सिंक्रोनस मैसेजिंग दोनों का समर्थन करता है। जेएएक्सएम जावा एक्सएमएल प्रोग्रामिंग एपीआई अवलोकन में से एक है एक्सएमएल मैसेजिंग (जेएएक्सएम) के लिए जावा एपीआई डेवलपर्स को जावा प्लेटफॉर्म का उपयोग करके एक्सएमएल मैसेजिंग का उपयोग करने में सक्षम बनाता है। डेवलपर्स जेएएक्सएम एपीआई का उपयोग करके इंटरनेट पर एक्सएमएल संदेश बना और भेज सकते हैं। इसके अलावा, एक्स. एम. एल. मैसेजिंग के लिए जावा ए. पी. आई. के रिमोट प्रोसीजर कॉल की तुलना में कई फायदे हैं जैसे कि निम्नलिखितः एक तरफा (अतुल्यकालिक) मैसेजिंग एक से अधिक पक्षों के लिए एक संदेश का रूटिंग गारंटीकृत वितरण जैसी सुविधाओं के साथ विश्वसनीय मैसेजिंग पूर्ण जे. ए. एक्स. एम. ए. पी. आई. दो पैकेजों के साथ आता हैः javax.xml.soap: इस पैकेज में एस. ओ. ए. पी. संदेश बनाने और उसे लोकप्रिय बनाने के लिए ए. पी. आई. शामिल है। javax.xml.messaging: यह पैकेज एक संदेश प्रदाता के माध्यम से एकतरफा संदेश भेजने की अनुमति देता है। जे. ए. एक्स. एम. में संदेश संदेश एक्स. एम. एल. संदेश हैं जो निर्धारित एस. ओ. ए. पी. प्रारूप और मानकों का पालन करते हैं। एस. ओ. ए. पी. संदेश दो मुख्य प्रकार के होते हैंः जिनके पास संलग्नक होते हैं और जिनके पास नहीं होते हैं। उदाहरण के लिए, यदि आप चाहते हैं कि आपके संदेश में एक छवि हो, तो आपको संदेश के साथ एक संलग्नक भेजना होगा। SAAJ API एस. ओ. ए. पी. संदेशों में संलग्नक के लिए संलग्नक भाग वर्ग प्रदान करता है। कनेक्शन सभी एस. ओ. ए. पी. संदेशों को भेजने और प्राप्त करने के लिए एक कनेक्शन की आवश्यकता होती है। कनेक्शन किसी संदेश प्रदाता या किसी विशेष गंतव्य पर जा सकता है। जेएएक्सएम एपीआई दो प्रकार के कनेक्शनों का प्रतिनिधित्व करने के लिए वर्ग और इंटरफेस प्रदान करता हैः javax.xml.soap.SOAPConnection-प्रेषक से सीधे रिसीवर के लिए एक कनेक्शन (एक पॉइंट-टू-पॉइंट कनेक्शन) javax.xml.messaging.ProviderConnection-एक संदेश प्रदाता एसओएपी कनेक्शन एक एसओएपी कनेक्शन सीधे दूरस्थ पक्ष को संदेश भेजने के लिए एक पॉइंट-टू-पॉइंट कनेक्शन है। एक एस. ओ. ए. पी. कनेक्शन ऑब्जेक्ट, जो एक पॉइंट-टू-पॉइंट कनेक्शन का प्रतिनिधित्व करता है, बनाने और उपयोग करने में सरल है। आपको एस. ओ. ए. पी. कनेक्शन ऑब्जेक्ट का उपयोग करने के लिए कोई कॉन्फ़िगरेशन करने की आवश्यकता नहीं है क्योंकि इसे सर्वलेट कंटेनर (जैसे टॉमकैट) या जे2ईई सर्वर में चलाने की आवश्यकता नहीं है। ग्राहक के लिए सेवा प्रदाता के बिना कनेक्शन रखने का यह एकमात्र तरीका है। प्रोवाइडर कनेक्शन एक प्रोवाइडर कनेक्शन ऑब्जेक्ट एक संदेश प्रदाता के साथ एक कनेक्शन का प्रतिनिधित्व करता है। (अगला खंड संदेश प्रदाताओं के बारे में अधिक बताता है।) जब आप प्रोवाइडरकनेक्शन ऑब्जेक्ट के माध्यम से कोई संदेश भेजते हैं, तो संदेश संदेश प्रदाता को जाता है। संदेश प्रदाता संदेश के मार्ग निर्देश का पालन करते हुए संदेश को आगे बढ़ाता है, जब तक कि संदेश अंतिम प्राप्तकर्ता के संदेश प्रदाता तक नहीं पहुंच जाता है, जो बदले में संदेश को अंतिम प्राप्तकर्ता को आगे बढ़ाता है। संदेश प्रदाता एक संदेश प्रदाता संदेशों पर नज़र रखता है और उन्हें सही गंतव्य या गंतव्य तक पहुँचाता है। यह एक ऐसी सेवा है जो संदेशों के प्रसारण और मार्ग निर्धारण को संभालती है। मैसेजिंग प्रोवाइडर का उपयोग कब करना है एक जेएएक्सएम क्लाइंट मैसेजिंग प्रोवाइडर का उपयोग कर सकता है या नहीं भी कर सकता है। यदि आप केवल वेब सेवाओं के उपभोक्ता बनना चाहते हैं तो आम तौर पर आपको संदेश प्रदाता की आवश्यकता नहीं है। मैसेजिंग प्रोवाइडर का उपयोग न करने की कुछ सीमाएँ निम्नलिखित हैंः क्लाइंट केवल अनुरोध-प्रतिक्रिया संदेश भेज सकता है क्लाइंट केवल क्लाइंट की भूमिका में कार्य कर सकता है मैसेजिंग प्रोवाइडर का उपयोग न करने के कुछ फायदे निम्नलिखित हैंः एप्लिकेशन को जे2एसई प्लेटफॉर्म का उपयोग करके लिखा जा सकता है एप्लिकेशन को सर्वलेट कंटेनर या जे2ईई कंटेनर में तैनात करने की आवश्यकता नहीं है किसी कॉन्फ़िगरेशन की आवश्यकता नहीं है संदर्भ देखें जेएसआर 67: जावा (टीएम) एक्सएमएल मैसेजिंग के लिए एपीआई एक्सएमएल मैसेजिंग के लिए जावा एपीआई (जेएएक्सएम) विनिर्देश 1.1 एसओएपी जावा के लिए संलग्नक एपीआई के साथ (एसएएजे) विनिर्देश 1.3 javax.xml.messaging-यह पैकेज जेएएक्सएम 1.1 विनिर्देश javax.xml.soap में निर्दिष्ट किया गया है-इस पैकेज में निर्दिष्ट किया गया है