Java API för XML Messaging
Java API för XML Messaging (JAXM) gör det möjligt för distribuerade programvaror att kommunicera med XML (och SOAP ). JAXM stöder både asynkron och synkron meddelandehantering.
JAXM är en av Java XML- programmerings -API :erna
Översikt
Java API för XML Messaging (JAXM) gör det möjligt för utvecklare att använda XML-meddelanden med hjälp av Java-plattformen. Utvecklare kan skapa och skicka XML-meddelanden över internet med JAXM API.
Java API för XML Messaging har också flera fördelar jämfört med Remote Procedure Call som följande:
- Envägs (asynkron) meddelanden
- Omdirigering av ett meddelande till mer än en part
- Pålitlig meddelandehantering med funktioner som garanterad leverans
Det kompletta JAXM API kommer med två paket:
- javax.xml.soap: Det här paketet innehåller API:et för att skapa och fylla i ett SOAP-meddelande.
- javax.xml.messaging: Detta paket tillåter en att skicka enkelriktade meddelanden via en meddelandeleverantör.
Meddelanden
Meddelanden i JAXM är XML-meddelanden som följer det föreskrivna SOAP-formatet och standarderna. Det finns två huvudtyper av SOAP-meddelanden: de som har bilagor och de som inte har det. Om du till exempel vill att ditt meddelande ska innehålla en bild måste du skicka en bilaga med meddelandet. SAAJ API tillhandahåller klassen AttachmentPart för bilagor i SOAP-meddelanden.
Anslutningar
En anslutning krävs för att skicka och ta emot alla SOAP-meddelanden. Anslutningen kan gå till en meddelandeleverantör eller en viss destination. JAXM API tillhandahåller klassen och gränssnittet för att representera två typer av anslutningar:
- javax.xml.soap.SOAPConnection —en anslutning från sändaren direkt till mottagaren (en punkt-till-punkt-anslutning)
- javax.xml.messaging.ProviderConnection —en anslutning till en meddelandeleverantör
SOAP Anslutning
En SOAPConnection är en punkt-till-punkt-anslutning för att skicka meddelanden direkt till en fjärrpart. Ett SOAPConnection-objekt, som representerar en punkt-till-punkt-anslutning, är enkelt att skapa och använda. Du behöver inte göra någon konfiguration för att använda ett SOAPConnection-objekt eftersom det inte behöver köras i en servletbehållare (som Tomcat) eller i en J2EE-server. Det är det enda sättet för en klient att ha en anslutning utan en tjänsteleverantör.
Leverantörsanslutning
Ett ProviderConnection-objekt representerar en anslutning till en meddelandeleverantör. (Nästa avsnitt förklarar mer om meddelandeleverantörer.) När du skickar ett meddelande via ett ProviderConnection-objekt, går meddelandet till meddelandeleverantören. Meddelandeleverantören vidarebefordrar meddelandet, enligt meddelandets dirigeringsinstruktioner, tills meddelandet kommer till den slutliga mottagarens meddelandeleverantör, som i sin tur vidarebefordrar meddelandet till den slutliga mottagaren.
Meddelandeleverantörer
En meddelandeleverantör håller reda på meddelanden och dirigerar dem till rätt destination eller destinationer. Det är en tjänst som hanterar överföring och dirigering av meddelanden.
När ska man använda en meddelandeleverantör
En JAXM-klient kanske använder en meddelandeleverantör eller inte. Generellt sett behöver du ingen meddelandeleverantör om du bara vill vara en konsument av webbtjänster. Några begränsningar för att inte använda en meddelandeleverantör är följande:
Klienten kan endast skicka begäran-svar-meddelanden. Klienten kan endast agera i klientrollen
Några fördelar med att inte använda en meddelandeleverantör är följande:
- Ansökan kan skrivas med J2SE-plattformen
- Applikationen behöver inte distribueras i en servletbehållare eller en J2EE-behållare
- Ingen konfiguration krävs
Se även
- JSR 67: Java(TM) API:er för XML-meddelanden
- Java API för XML Messaging (JAXM) specifikation 1.1
- SOAP with Attachments API for Java (SAAJ) Specifikation 1.3
- javax.xml.messaging - detta paket är specificerat i JAXM 1.1-specifikationen
- javax.xml.soap - detta paket specificeras i SAAJ 1.3-specifikationen
- Översikt över JAXM
- Hello World Exempel för JAXM