Djupdykning i Enterprise Javabeans Deployment Descriptor

October 28

Två större versioner av Enterprise Javabeans (EJB) distributions beskrivningar är för närvarande i omlopp. EJB 1.1 driftsättning deskriptor beskriver strukturen och montering av EJB applikationer byggda med EJB 1.1-specifikationen. EJB 2.0 driftsättning deskriptor lägger ett antal taggar som är nödvändiga för att beskriva de ytterligare funktioner i EJB 2.0-applikationer. Medan EJB 2.0-kompatibla EJB containrar krävs för att stödja EJB 1.1 applikationer, till EJB containrar som inte har uppgraderats stödja 2.0-specifikationen kommer inte att stödja EJB 2.0 distributions deskriptorer.

Observera att varje EJB driftsättningsbeskriv måste namnges EJB-jar.xml.

Denna artikel berör utveckla EJB program som överensstämmer med 2.0-specifikationen. Således, när man väljer en EJB container, bör du använda stöd för EJB 2.0-specifikationen som ett urvalskriterium. Ledande EJB container leverantörer - däribland IBMs WebSpere, BEA: s WebLogic, och öppen källkod JBoss Application Server - är bra ställen att börja leta.

Rotelementet en EJB driftsättningsbeskriv är <EJB-burk>. Alla tags måste kapslas inuti <EJB-burk> taggen. Inom <EJB-burk> taggen är tre subelement:

  • <Enterprise-bönor>: Den här taggen innehåller beskrivande information om EJB-komponenter i en EJB applikation. När ett företag böna behöver göra referenser till externa resurser, systemresurser och andra entitetsbönor, är dessa resurser som beskrivs i det här avsnittet.
  • <Relationer>: Den här taggen beskriver sambanden mellan entitetsbönor som använder behållaren förvaltade relation stöd för EJB 2.0-applikationer.
  • <Montering-deskriptor>: Denna tagg används för att beskriva monteringsinformation för en EJB applikation. Även bönor leverantörer kan leverera lite monterings information är ansökan församling ett ansvar som i första hand faller på ansökan monterings axlar. De två stora delar av ansökan montering beskriver transaktioner och beskriva säkerheten.

Den <Enterprise-bönor> tagg innehåller beskrivningar för varje typ av företags bönor som kan definieras i en EJB ansökan. Den har tre underelement: <session> för sessionsbönor, <enhet> för entitetsbönor, och <meddelandedrivna> för meddelandedrivna bönor. Session, enhet, och meddelandestyrda beans dela flera XML-taggar i gemensamt. Här är lowdown på dessa allmänna taggar:

  • Logiskt namn: Varje EJB komponent har ett logiskt namn som identifierar det namn som varje böna refereras i resten av utplaceringen deskriptor. Den logiska namnet finns i <EJB namn> taggen. Det måste vara unikt för omfattningen av EJB-jar-fil i vilken komponenten är förpackad. Den <EJB namn> taggen är en underelement för <session>, <enhet> och <meddelandedrivna> taggar.
  • Enterprise böna Klass: Företaget bönor klassen är den klass som implementerar alla affärsmetoder och livscykelhantering metoder EJB komponenten. Denna klass måste identifieras av <EJB-class> taggen. Den <EJB-class> måste ha fullständiga klassnamnet på EJB klassen. Den <EJB-class> taggen är en underelement för <session>, <enhet> och <meddelandedrivna> taggar.
  • Gränssnitt Komponent: Session och entitetsbönor kan också ha både lokala och fjärranslutna gränssnitt komponent. Den EJB container behöver veta vilka klasser genomföra komponentgränssnitt för sessionen och entitetsbönor. Den <Fjärr> taggen används för att identifiera en fjärrgränssnitt och innehålla fullständiga klassnamnet på fjärrgränssnittet (om det finns). Den <lokala> taggen används för att identifiera ett lokalt gränssnitt och innehålla fullständiga klassnamnet på det lokala gränssnittet (om det finns).

En EJB komponent behöver inte ha både avlägsna och lokala gränssnitt, men det måste ha det ena eller det andra. Undantaget från denna regel är meddelandedrivna bönor, som inte kan ha avlägsna eller lokala gränssnitt. För entitetsbönor och sessionsbönor, kan du ha både lokala och fjärranslutna gränssnitt. För varje komponent gränssnitt måste utplaceringen deskriptor definiera en motsvarande hem gränssnitt för ett företag böna.

  • Hem gränssnitt: Hem gränssnitt kan definieras för sessions och entitetsbönor. Den lokala hem gränssnittet ger lokal tillgång till företaget bönor medan fjärr hem gränssnittet ger fjärråtkomst till företagets bönor. Den lokala hem gränssnittet identifieras av <lokala hemmet> taggen i utplaceringen deskriptor. Fjärr hem gränssnittet identifieras av <home> taggen i utplaceringen deskriptor.
  • Transaktionstyp: Varje företag bean komponenten har en <transaktionstypen> taggen. Den <transaktionstypen> taggen används för att beskriva om företaget böna transaktionstjänst sköts av bönor eller av EJB container. De två tillåtna värden för <transaktionstypen> taggen är Bean (för bean förvaltade transaktioner) och Container (för container förvaltade transaktioner).

Bean-hanterade transaktioner kan vara mycket komplexa och är säkerligen utanför ramen för en nybörjar EJB programmerare.

  • Beskrivning: Varje EJB komponent kan ha en valfri beskrivning tagg som beskriver syftet med EJB komponenten. Beskrivningen elementet avgränsas av <description> taggen, som bör innehålla dokumentation om syftet med EJB komponenten.
  • Bygga verktygs taggar:. Det finns flera valfria taggar i varje företag böna som används för att ge ytterligare information om byggverktyg Bygga verktyg ger ett grafiskt gränssnitt för att skapa EJB applikationer. Bygga verktyg taggar används för att förbättra presentationen av företags bönor i byggverktyg användargränssnitt.

<display namn>: Den här taggen identifierar namn under vilket företaget böna komponenten ska visas i ett byggverktyg.

<stora ikonen>: Den här taggen identifierar sökvägen till en 32 pixel med 32 pixel ikon används för att visa företagets bönor. Bilden måste vara i antingen en JPEG- eller GIF-format.

<small-ikonen>: Den här taggen identifierar sökvägen till en 16 pixel med 16 icon pixel används för att visa företagets bönor. Bilden måste vara i antingen en JPEG- eller GIF-format.