Wie stelle ich EJB auf dem Server bereit?

8

Ich lerne EJB3 von den letzten Tagen. Ich habe viele Fragen zu EJB, zu Anwendungsservern und zum Einsatz von EJB.

Zunächst habe ich eine einfache stateless Session-Bean von helloworld erstellt, aber ich weiß nicht, wie ich sie auf dem Server bereitstellen soll. Es hat eine einzelne Bean-Klasse, eine Bean-Schnittstelle und einen Servlet-Client. Ich habe Eclipse verwendet, um dieses Projekt zu entwickeln.
Keines der Bücher, die ich lese, gibt Schritt für Schritt Details darüber, wie man EJB auf den Server legt und wie man auf diese Beans zugreift.

Ich habe JBoss 6 Server und ich habe auch Java EE Budge von der Sun Website heruntergeladen. Enthält dieses Java EE-Paket den Glassfish-Server? oder muss ich es separat herunterladen?
Kann mir bitte jemand Schritt für Schritt Details darüber geben, wie ich meine Bean und ihren Client auf Server (JBoss oder Java EE) setzen kann?

Und warum müssen wir die Bean-Interface-Klasse in den EJB-Client-Code aufnehmen? Ich meine, entweder müssen wir Client und Bean in demselben Paket behalten oder wenn wir sie in separaten Paketen aufbewahren, müssen wir Bean-Schnittstellen in den Client-Code importieren. Habe ich Recht?

    
Shekhar 29.03.2010, 04:49
quelle

3 Antworten

8

Mit Java EE 6 können Sie Ihr Servlet und Ihr EJB in einem WAR verpacken (entweder Ihr EJB in ein JAR packen und es in WEB-INF/lib oder einfach einfügen Setzen Sie alle Klassen in WEB-INF/classes ). Um diesen WAR zu implementieren, kopiere ihn auf:

  • $GLASSFISH_HOME/domains/<domain1>/autodeploy für GlassFish v3 *
  • $JBOSS_HOME/server/default/deploy für JBoss 6

Mit Java EE 5 müssen Sie Ihren Code in einer EAR verpacken.

Wenn Sie Ihre Anwendung aus Eclipse bereitstellen möchten (mithilfe des Eclipse-WTP), müssen Sie den entsprechenden Serveradapter installieren. Für Eclipse Galileo und GlassFish (es gibt derzeit keinen Adapter für JBoss 6 AFAIK), Rechtsklick auf die Serveransicht, wählen Sie Neu & gt; Server , klicken Sie auf Weitere Serveradapter herunterladen und wählen Sie den Adapter GlassFish aus. Klicken Sie auf Fertig stellen, um Ihren neuen Java EE 6-Server von GlassFish v3 zu definieren und Ihre Anwendung darauf bereitzustellen ( rechtsklicken auf Ihrer Anwendung und dann Ausführen als & gt; Auf Server ausführen ). Für Eclipse Helios und GlassFish können Sie dem Link von @VonC folgen (manuelle Installation) oder überprüfen Sie diese Antwort (über die Update-Site installieren).

    
Pascal Thivent 29.03.2010, 10:28
quelle
1

Sie müssen GlassFish zu Ihrer Eclipse-Installation hinzufügen (siehe GlassFish-Plugin für Eclipse ).

Der vollständige Prozess ist hier beschrieben (mit die neueste Eclipse Helios 3.6M6)

    
VonC 29.03.2010 07:01
quelle
1

Sie sollten als EJB in den Ordner jboss<version>\server/default/deploy exportieren und dann den Build-Pfad für das Webprojekt des Servlets hinzufügen. Sie können "Run on Server" und wählen Sie einen Anwendungsserver wie in jedem Projekt, keine Notwendigkeit, die WAR zu exportieren, aber wenn Sie das tun, müssen Sie Ihre WAR jedes Mal erneut exportieren, wenn Sie Ihren Code ändern < br> AFAIK gibt es kein Eclipse-Plugin für JBoss 6, aber Eclipse bietet eins für 5.1

    
Thiago 09.08.2011 19:25
quelle