Java API for XML Messaging
এক্স. এম. এল মেসেজিং-এর জন্য জাভা এপিআই (জে. এ. এক্স. এম) বিতরণকৃত সফ্টওয়্যার অ্যাপ্লিকেশনগুলিকে এক্স. এম. এল (এবং এস. ও. এ. পি) ব্যবহার করে যোগাযোগ করতে সক্ষম করে। জেএএক্সএম অ্যাসিঙ্ক্রোনাস এবং সিঙ্ক্রোনাস মেসেজিং উভয়কেই সমর্থন করে। জেএএক্সএম হল জাভা এক্সএমএল প্রোগ্রামিং এপিআইগুলির মধ্যে একটি সংক্ষিপ্ত বিবরণ এক্সএমএল মেসেজিং (জেএএক্সএম)-এর জন্য জাভা এপিআই ডেভেলপারদের জাভা প্ল্যাটফর্ম ব্যবহার করে এক্সএমএল মেসেজিং ব্যবহার করতে সক্ষম করে। ডেভেলপাররা জেএএক্সএম এপিআই ব্যবহার করে ইন্টারনেটে এক্সএমএল বার্তা তৈরি এবং পাঠাতে পারে। এছাড়াও, এক্স. এম. এল মেসেজিং-এর জন্য জাভা এ. পি. আই-এর রিমোট প্রসিডিউর কলের তুলনায় বেশ কয়েকটি সুবিধা রয়েছে যেমনঃ একমুখী (অ্যাসিঙ্ক্রোনাস) মেসেজিং রাউটিং একটি বার্তার একাধিক পক্ষের কাছে নির্ভরযোগ্য মেসেজিং গ্যারান্টিযুক্ত ডেলিভারির মতো বৈশিষ্ট্য সহ সম্পূর্ণ জে. এ. এক্স. এম এ. পি. আই দুটি প্যাকেজ নিয়ে আসেঃ <আই. ডি1>: এই প্যাকেজে একটি এস. ও. এ. পি বার্তা তৈরি এবং জনবহুল করার জন্য এ. পি. আই রয়েছে। javax.xml.messaging: এই প্যাকেজটি একজনকে বার্তা প্রদানকারীর মাধ্যমে একমুখী বার্তা পাঠানোর অনুমতি দেয়। জেএএক্সএম-এ বার্তা বার্তা হল এক্সএমএল বার্তা যা নির্ধারিত এসওএপি বিন্যাস এবং মান অনুসরণ করে। দুটি প্রধান ধরনের এস. ও. এ. পি বার্তা রয়েছেঃ যাদের সংযুক্তি রয়েছে এবং যাদের নেই। উদাহরণস্বরূপ, আপনি যদি চান যে আপনার বার্তায় একটি ছবি থাকুক, তাহলে আপনাকে অবশ্যই বার্তাটির সঙ্গে একটি সংযুক্তি পাঠাতে হবে। এসএএজে এপিআই এসওএপি বার্তাগুলিতে সংযুক্তির জন্য অ্যাটাচমেন্টপার্ট ক্লাস প্রদান করে। সংযোগ সমস্ত এস. ও. এ. পি বার্তা পাঠাতে এবং গ্রহণ করতে একটি সংযোগ প্রয়োজন। সংযোগটি কোনও বার্তা প্রদানকারী বা কোনও নির্দিষ্ট গন্তব্যে যেতে পারে। জেএএক্সএম এপিআই দুই ধরনের সংযোগের প্রতিনিধিত্ব করার জন্য শ্রেণী এবং ইন্টারফেস প্রদান করেঃ javax.xml.soap.SOAPConnection-প্রেরক থেকে সরাসরি রিসিভারের সাথে একটি সংযোগ (একটি পয়েন্ট-টু-পয়েন্ট সংযোগ) javax.xml.messaging.ProviderConnection-একটি বার্তা প্রদানকারী এসওএপি সংযোগ একটি এসওএপি সংযোগ সরাসরি একটি দূরবর্তী পক্ষের কাছে বার্তা পাঠানোর জন্য একটি পয়েন্ট-টু-পয়েন্ট সংযোগ। একটি এস. ও. এ. পি. সংযোগ বস্তু, যা একটি পয়েন্ট-টু-পয়েন্ট সংযোগের প্রতিনিধিত্ব করে, তৈরি করা এবং ব্যবহার করা সহজ। কোনও এস. ও. এ. পি. কানেকশন অবজেক্ট ব্যবহার করার জন্য আপনাকে কোনও কনফিগারেশন করতে হবে না কারণ এটি কোনও সার্ভলেট পাত্রে (যেমন টমক্যাট) বা জে2. ই. ই সার্ভারে চালানোর প্রয়োজন নেই। একজন গ্রাহকের জন্য পরিষেবা প্রদানকারী ছাড়া সংযোগ রাখার এটিই একমাত্র উপায়। সরবরাহকারী সংযোগ একটি সরবরাহকারী সংযোগ বস্তু একটি বার্তা প্রদানকারীর সাথে সংযোগের প্রতিনিধিত্ব করে। (পরবর্তী বিভাগে বার্তা সরবরাহকারী সম্পর্কে আরও ব্যাখ্যা করা হয়েছে।) আপনি যখন প্রোভাইডার কানেকশন অবজেক্টের মাধ্যমে একটি বার্তা পাঠান, তখন বার্তাটি বার্তা প্রদানকারীর কাছে যায়। বার্তা প্রদানকারী বার্তাটির রাউটিং নির্দেশাবলী অনুসরণ করে বার্তাটি ফরোয়ার্ড করে, যতক্ষণ না বার্তাটি চূড়ান্ত প্রাপকের বার্তা প্রদানকারীর কাছে পৌঁছায়, যা বার্তাটি চূড়ান্ত প্রাপকের কাছে ফরোয়ার্ড করে। বার্তা প্রদানকারী একজন বার্তা প্রদানকারী বার্তাগুলির উপর নজর রাখে এবং সেগুলিকে সঠিক গন্তব্য বা গন্তব্যে নিয়ে যায়। এটি এমন একটি পরিষেবা যা বার্তা প্রেরণ এবং রাউটিং পরিচালনা করে। কখন বার্তা প্রদানকারী ব্যবহার করতে হবে একজন জেএএক্সএম ক্লায়েন্ট বার্তা প্রদানকারী ব্যবহার করতে পারে বা নাও করতে পারে। সাধারণত, আপনি যদি কেবল ওয়েব পরিষেবাগুলির গ্রাহক হতে চান তবে আপনার কোনও বার্তা সরবরাহকারীর প্রয়োজন নেই। বার্তা প্রদানকারী ব্যবহার না করার কিছু সীমাবদ্ধতা নিম্নরূপঃ ক্লায়েন্ট শুধুমাত্র অনুরোধ-প্রতিক্রিয়া বার্তা পাঠাতে পারে ক্লায়েন্ট শুধুমাত্র ক্লায়েন্টের ভূমিকায় কাজ করতে পারে বার্তা প্রদানকারী ব্যবহার না করার কিছু সুবিধা নিম্নরূপঃ অ্যাপ্লিকেশনটি জে2এসই প্ল্যাটফর্ম ব্যবহার করে লেখা যেতে পারে অ্যাপ্লিকেশনটি কোনও সার্ভলেট ধারক বা জে2ইই পাত্রে স্থাপন করার প্রয়োজন নেই কোনও কনফিগারেশনের প্রয়োজন নেই উল্লেখ দেখুন জেএসআর 67: জাভা (টিএম) এক্সএমএল বার্তাপ্রেরণের জন্য জাভা এপিআই এক্সএমএল বার্তাপ্রেরণের জন্য (জেএএক্সএম) নির্দিষ্টকরণ 1.1 জাভা (এসএএজে) নির্দিষ্টকরণের জন্য সংযুক্তি এপিআই সহ এসওএপি 1.3 javax.xml.messaging-এই প্যাকেজটি জেএএক্সএম 1.1 নির্দিষ্টকরণ javax.xml.soap-এ নির্দিষ্ট করা হয়েছে।