Java API pro zasílání zpráv XML - Java API for XML Messaging
The Java API pro XML zasílání zpráv (JAXM) umožňuje distribuovaný software aplikace komunikovat pomocí XML (a MÝDLO ). JAXM podporuje asynchronní i synchronní zasílání zpráv.
JAXM je jedním z Java XML programování API
Přehled
The Java API pro XML Messaging (JAXM) umožňuje vývojářům používat Zprávy XML pomocí platformy Java. Vývojáři mohou vytvářet a odesílat zprávy XML přes internet pomocí rozhraní JAXM API.[1]
Rozhraní Java API pro XML Messaging má také několik výhod Vzdálené volání procedur například následující:
- Jednosměrné (asynchronní) zasílání zpráv
- Směrování zprávy na více než jednu stranu
- Spolehlivé zasílání zpráv s funkcemi, jako je zaručené doručení
Kompletní rozhraní JAXM API je dodáváno se dvěma balíčky:[2]
- javax.xml.soap: Tento balíček obsahuje rozhraní API pro vytváření a naplnění zprávy SOAP.
- javax.xml.messaging: Tento balíček umožňuje odesílat jednosměrné zprávy prostřednictvím poskytovatele zpráv.
Zprávy
Zprávy v JAXM jsou zprávy XML, které dodržují předepsaný formát a standardy SOAP. Existují dva hlavní typy zpráv SOAP: ty, které mají přílohy, a ty, které nemají. Například pokud chcete, aby vaše zpráva obsahovala obrázek, musíte ke zprávě odeslat přílohu. API SAAJ poskytuje třídu AttachmentPart pro přílohy ve zprávách SOAP.[3]
Připojení
K odesílání a přijímání všech zpráv SOAP je nutné připojení. Připojení může směřovat k poskytovateli zpráv nebo k určitému cíli.[4]Rozhraní JAXM API poskytuje třídu a rozhraní, které představují dva druhy připojení:
- javax.xml.soap.SOAPConnection —Připojení od odesílatele přímo k přijímači (spojení typu point-to-point)
- javax.xml.messaging.ProviderConnection —Připojení k poskytovateli zpráv
Připojení SOAP
SOAPConnection je připojení typu point-to-point pro odesílání zpráv přímo vzdálené straně.[5] Objekt SOAPConnection, který představuje připojení typu point-to-point, lze snadno vytvořit a použít. Chcete-li použít objekt SOAPConnection, nemusíte provádět žádnou konfiguraci, protože se nemusí spouštět v kontejneru servletu (například Tomcat) nebo na serveru J2EE. Je to jediný způsob, jak má klient připojení bez poskytovatele služeb.[6]
Připojení poskytovatele
Objekt ProviderConnection představuje připojení k poskytovateli zpráv. (Následující část vysvětluje více o poskytovatelích zpráv.) Když odešlete zprávu prostřednictvím objektu ProviderConnection, zpráva přejde k poskytovateli zpráv. Poskytovatel zpráv předává zprávu podle pokynů pro směrování zprávy, dokud se zpráva nedostane k poskytovateli zpráv konečného příjemce, který ji pak předá konečnému příjemci.[7]
Poskytovatelé zpráv
Poskytovatel zpráv sleduje zprávy a směruje je do správného cíle nebo cílů. Jedná se o službu, která zpracovává přenos a směrování zpráv.[8]
Kdy použít poskytovatele zpráv
Klient JAXM může nebo nemusí využívat poskytovatele zpráv. Obecně nepotřebujete poskytovatele zpráv, pokud chcete být pouze spotřebitelem webových služeb. Některá omezení nepoužívání poskytovatele zpráv jsou následující:
Klient může odesílat pouze zprávy typu odpověď na žádost Klient může jednat pouze v roli klienta
Některé výhody nepoužívání poskytovatele zpráv jsou následující:
- Aplikaci lze zapsat pomocí platformy J2SE
- Aplikace nemusí být nasazena v kontejneru servletu nebo kontejneru J2EE
- Není vyžadována žádná konfigurace[9]
Reference
- ^ http://www.inf.fu-berlin.de/lehre/SS03/19560-P/Docs/JWSDP/tutorial/doc/JAXM.html
- ^ http://www.inf.fu-berlin.de/lehre/SS03/19560-P/Docs/JWSDP/tutorial/doc/JAXM.html
- ^ http://www.tecnun.es/asignaturas/InteInfo/Recursos/Xml/docs/tutorial/doc/JAXM3.html#63936
- ^ http://www.tecnun.es/asignaturas/InteInfo/Recursos/Xml/docs/tutorial/doc/JAXM3.html#63936
- ^ http://docs.oracle.com/javaee/5/api/javax/xml/soap/SOAPConnection.html
- ^ http://docs.oracle.com/javaee/1.3/tutorial/doc/JAXM3.html
- ^ http://docs.oracle.com/javaee/1.3/tutorial/doc/JAXM3.html
- ^ http://www.tecnun.es/asignaturas/InteInfo/Recursos/Xml/docs/tutorial/doc/JAXM3.html#63936
- ^ http://www.inf.fu-berlin.de/lehre/SS03/19560-P/Docs/JWSDP/tutorial/doc/JAXM2.html#63942
Viz také
- JSR 67: Java (TM) API pro XML zasílání zpráv
- Specifikace Java API pro XML Messaging (JAXM) 1.1
- SOAP s Attachments API pro specifikaci Java (SAAJ) 1.3
- javax.xml.messaging - tento balíček je specifikován ve specifikaci JAXM 1.1
- javax.xml.soap - tento balíček je specifikován ve specifikaci SAAJ 1.3
- Přehled JAXM
- Příklad Hello World pro JAXM