# Verteilte Anwendung mit JavaEE



## SubSonniC (12. Dez 2013)

Hallo,

ich versuche seit einiger Zeit unter Eclipse zwei JSF-Anwendungen mit einer gemeinsamen Datenstruktur zu realisieren.
Dafür habe ich zuerst ein Globales JPA-Projekt angelegt und die EJB-Libs hinzugefügt um über Services die Entities zu verwalten. Die beiden anderen Projekte sind zwei JSF-Anwendungen ebenfalls mit integrierten EJB-Libs. Alle Projekte verwenden zudem CDI.

Ich greife aus den JSF-Anwendungen über @Inject auf die Service-Klassen des JPA-Projekts und auf einiges Mehr wie Enums oder sonstige golable Funktionalität zu.

Leider bekomm ich die Projekte nicht so deployed, da immer wieder Abhängigkeitsfprobelme auftreten.

Ich verwende Eclipse Kepler sowie Glassfish 4 und Primefaces 4 als JSF-View-Technologie. 


Ich schätze mal meine Herangehensweise war etwas naiv. Wer kann mich da ein bisschen aufklären, wie man so eine Architektur realisiert. Ich möchte nicht die ganzen Entities doppelt führen müssen.


Dabke

David


----------



## F.S.WhiTeY (15. Dez 2013)

Moin,

deine Probleme sind nicht genau beschrieben. Wie hast du die Abhängigkeiten denn definiert? Maven und bei deployment gefordert?

Als Glaskugellösung versuche doch mal in ner bestimmten Reihenfolge zu deployen.

Erst das JPA gedönse weil das von den JSF-Anwendungen gefordert ist. Dann die JSF-Anwendungen.


----------



## SubSonniC (18. Dez 2013)

Hallo,

Die Abhängigkeit ist lediglich über Eclipse und den BuildPath definiert. Die Reihenfolge habe ich bereits ausprobiert.
Maven ist und wird nicht gefordert.

Das soll ein Projekt im Privaten von der Pike auf werden, für das ich vollständig selbst verantwortlich bin. Daher ist es mir völlig egal wie ich das realisiere. Hauptsache es ist Vernünftig.

Vielleicht muss ich ja die EJBs per jndi registrieren und kann dann aus den anderen beiden JSF Projekten darauf zu greifen???

Grüße


----------



## Peter-Rene (9. Jan 2014)

Um auf EJB's in JSF's zugreifen zu können, müssen diese in der Tat registriert werden.
Dies geschieht simpel über die @Named - annotation. Dadurch werden sie per EL erreichbar und können dann in JSF's verwendet werden.


----------

