Sök…


Anmärkningar

Låt oss först förtydliga vissa terminologier:

  • Utgående meddelanden är där meddelandet startar från servern (för att vara mer exakt startar det från din app som du har på servern, WebSphere Liberty i detta fall) och slutar vid EIS.
  • Inbound Messaging är där meddelandet börjar från EIS och slutar på servern.
  • Meddelande slutpunkt i allmänhet den plats där meddelandet hamnar sitter / blir mottagen i ett specifikt skede av dess livscykel.

ange bildbeskrivning här

Så med utgående anslutning hänvisar vi till situationen där en applikation får en anslutning till en extern EIS och läser eller skriver data till den. Med inkommande anslutning hänvisar vi till situationen där Resource Adapter (RA) lyssnar på händelser från den externa EIS och ringer till din applikation när en sådan händelse inträffar.

Illustration av en utgående RA

ange bildbeskrivning här

Illustration av en inkommande RA

ange bildbeskrivning här

Vad betyder ett MessageEndPoint i JCA?

Applikationsservern (ex: WebSphere Liberty ) tillhandahåller meddelandeslutpunkt MBeans för att hjälpa dig att hantera leveransen av ett meddelande till dina meddelandedrivna bönor som fungerar som lyssnare på specifika slutpunkter, som är destinationer och att hantera EIS-resurserna som är används av dessa meddelandedrivna bönor. Meddelandedrivna bönor som distribueras som meddelandeslutpunkter är inte samma som meddelandedrivna bönor som är konfigurerade mot en lyssnarport. Meddelandedrivna bönor som används som meddelandeslutpunkter måste distribueras med hjälp av en ActivationSpecification som definieras i en RA-konfiguration för JCA (hittas i filen ra.xml ).

Vad betyder det att aktivera ett MessageEndPoint?

Med meddelandesändpunkt MBeans kan du aktivera och inaktivera specifika slutpunkter i dina applikationer för att säkerställa att meddelanden bara levereras till lyssnande meddelandedrivna bönor som samverkar med hälsosamma EIS-resurser. Denna kapacitet låter dig optimera prestanda för dina JMS-applikationer i situationer där en EIS-resurs inte uppträder som förväntat. Meddelandeöverföring till en slutpunkt misslyckas vanligtvis när den meddelandedrivna bönan som lyssnar åberopar en operation mot en resurs som inte är frisk. Till exempel kan en meddelandeleverantör, som är en inkommande resursadapter som är JCA-kompatibel, misslyckas med att leverera meddelanden till en slutpunkt när dess underliggande meddelandedrivna böna försöker göra transaktioner mot en databaseserver som inte svarar.

Behöver MessageEndPoint vara en böna?

Det borde. Annars hamnar du i en stor röra genom att skapa ditt eget okonventionella sätt att göra saker som slår syftet med att följa Java EE-specifikationen i första hand. Designa dina meddelandedrivna bönor för att delegera affärsbehandling till andra företagsbönor. Få inte tillgång till EIS-resurserna direkt i den meddelandedrivna bönan, utan gör det indirekt genom en delegerad böna.

Kan du visa några enkla exempel på hur du arbetar / distribuerar en MessageEndPoint?

Kontrollera den andra resursen jag nämner nedan för ett användbart exempel.

Användbara inlärningsresurser:

Exempel Resursadapter

class MyResourceAdapter 
   implements javax.resource.spi.ResourceAdapter {
  
   public void start(BootstrapContext ctx){..}
   public void stop(){..}

   public void endpointActivation (MessageEndpoingFactory mf, ActivationSpec a){..}
   public void endpointDeactivation (MessageEndpoingFactory mf, ActivationSpec a){..}
   public void getXAResources(ActivationSpec[] activationSpecs){..}
}


Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow