RESTeasy als EJB

S

Sym

Gast
Hallo,

ich möchte gerne einen JBoss verwenden. Die Services sollen über RESTeasy publiziert werden.

Ich möchte ebenfalls eine UI-WAR auf dem JBoss deployen. Um von dem UI auf das Backend zuzugreifen, wäre es schön, wenn ich die Services ebenfalls als local EJBs verfügbar mache.

Bisher waren die Services in einem WAR. Wie kann ich diese als RESTful Services und als local EJBs verfügbar machen? Benötige ich das ganze dann als WAR? Nach meinem Verständnis muss das ja nicht unbedingt sein, oder? Ich müsste das ganze als EJB deployen können, oder?

Ich arbeite gerade an Verständnisproblemen und erhoffe mit hier Klarheit.

Gruß Sym
 

TheDarkRose

Gesperrter Benutzer
Also, ich würd das in mehrere Projekte aufteilen. Das Oberprojekt ist eine EAR, die dann alles bundlet was du gemacht hast und in JBoss deployed wird.

Dann ein EJB-Projekt (wird eine .jar erzeugt) welche deine EJB's enthält. Entweder du deklarierst deine EJB zusätzlich mit @LocalBean, dann kannst du per non-interface-view darauf zugreifen, oder besser du schreibst ein eigenes Interface welches mit @Local annotiert wird. Dieses Interface kannst dann in deinem War injizieren.

Zu guter letzt, erstellst ein Dynamic Web Project, welches für deine Web UI zuständig ist. Dort holst du dir einfach per [c]@EJB MyLocalInterfaca foo;[/c] den Zugriff auf deine EJB's.
 
S

Sym

Gast
Danke. Genau so möchte ich das nutzen. Allerdings sollen die Beans ebenfalls als Webservices verfügbar sein, damit sich auch andere UIs verbinden können.

Das sollte doch auch im EJB-Projekt möglich sein, oder?

Oder würdest Du ein weiteres WAR erzeugen, welches nur die "Webservice-Proxies" enthält? Das wäre nicht EE-Standard, oder?
 

TheDarkRose

Gesperrter Benutzer
Naja, das was ich bis jetzt von RESTeasy heruasgefunden habe, benutzt es JaxWS und braucht Servlet's. Und Servlet's gehören nun mal in eine WAR. Hätte bis jetzt nichts gefunden, dass man für RESTeasy einfach eine Annotation an die EJB hängen kann.
 
S

Sym

Gast
Naja, das was ich bis jetzt von RESTeasy heruasgefunden habe, benutzt es JaxWS und braucht Servlet's. Und Servlet's gehören nun mal in eine WAR. Hätte bis jetzt nichts gefunden, dass man für RESTeasy einfach eine Annotation an die EJB hängen kann.
Danke, Du hast recht. So out-of-the-box hat RESTeasy mit EJB auch nicht funktioniert. Das ist nun ein eigenständiges WAR, welches auf die EJB zugreifen kann.

Schön! :)
 

Neue Themen


Oben