spiegazione EJB per quanto riguarda EAR vs GUERRA
Domanda
Ho appena iniziato a leggere su EJB.
Anche mentre venture in esso ho un paio di domande sulla base di quello che ho sentito parlare di loro.
- applicazioni non utilizzando EJB devono sempre essere distribuito come EAR?
- Le applicazioni possono contenenti EJB essere implementato proprio come gli altri altri progetti Web Java con Eclipse e senza usare ANT?
Soluzione
applicazioni 1.Do utilizzando bean sempre deve essere distribuito come EAR?
No.
Il modulo EJB è assemblato in un barattolo, consente di chiamare myapp-ejb.jar come convenzione di denominazione.
Questa contiene il codice EJB, nonché il file descrittore di deployment ejb-jar.xml chiamato in EJB 2.x. In EJB 3.0, il codice stesso contiene le annotazioni necessarie per il server di capire per la distribuzione, in modo che i descrittori di distribuzione sono opzionali. Il descrittore di deployment / annotazioni coprono cose di base necessaria per la distribuzione EJB come la JNDI, DataSource cercare ecc
Una raccolta di più moduli EJB e altri moduli web (di guerra) insieme costituiscono un EAR . Come @Isaac ha sottolineato, un orecchio non deve includere qualsiasi file WAR in esso. L'unica condizione per un file EAR è quello di contenere almeno un modulo J2EE di alcun tipo.
L'EAR ha bisogno di un META-INF/application.xml
che elenca tutti i barattoli EJB e le guerre presenti nell'orecchio. Quindi andare per un posto quando si dispone di più moduli EJB che di solito è il caso, quindi, la solita distribuzione è di un EAR.
Un esempio di questo file è mostrato di seguito preso da http://download.oracle.com/docs/cd/B32110_01/web.1013/b28221/undejdev003.htm . Questo è un buon articolo per voi a leggere.
<application>
<display-name>master-application</display-name>
<module>
<ejb>ejb1.jar</ejb>
</module>
<module>
<ejb>ejb2.jar</ejb>
</module>
<module>
<java>appclient.jar</java>
</module>
<module>
<web>
<web-uri>clientweb.war</web-uri>
<context-root>webapp</context-root>
</web>
</module>
<module>
<ejb>ejb3.jar</ejb>
</module>
applicazioni 2.Can contengono di EJB essere schierato come altro altro java progetti web utilizzando Eclipse e senza utilizzando ANT
Sì, una volta che un EAR / JAR è assemblato può essere distribuito in un server (tramite Eclipse, se lo si desidera).
Ant è un tool di creazione che non ha nulla a che fare con la distribuzione di effettiva del codice EJB. E 'usato per compilare e assemblare il JAR -. Che può essere fatto da Eclipse e
è un tutorial che fa proprio questo .
Letture consigliate
Applicazioni?? Imballaggio