Eine Stateless Bean in die andere Stateless einbinden.

BLR

Erfahrenes Mitglied
Hallo zusammen :)

Ich habe eine zwei Entities mit der Beziehung 1:n
z.B ein Haus hat mehrere Bewohner.

Durch die Beziehung @ManyToOne in der Bewohner-Entity habe ich folden Abschnitt code:

Java:
ManyToOne(optional=false)
@JoinColumn(name="Haus_FK")
private Haus haus_FK;

  public Haus getHaus_FK() {
  return haus_FK;
  }

  public void setHaus_FK(Haus haus_FK) {
  this.haus_FK = haus_FK;
  }

Nun möchte ich eine BewohnerEJB persistieren.

Dafür möchte ich auch das Attribut: setHaus(Haus haus) setzen.
Bewohner und Haus sind Stateless-Beans.

Die Möglichkeit:

Java:
bewohner.setHaus(em.find(Haus.class, id));

liefert mir eine NullPointerException. Wahrscheinlich deswegen, wenn die Stateless-Haus-Ejb verlasse, und wieder zurück in meine Stateless-Bewohner-Ejb zurückkehre, so ist der em null.
Jedenfalls muss ich irgendwie eine gültige Referenz zu dem Haus-ejb haben um ihn zu setzen.

Wie kann ich das erreichen?
Danke für jeden Tipp.
 
Das Problem habe ich gelöst, in dem ich die stateless-bean "Haus"
in die Statelessbean- "Bewohner" injeziert habe mittels dem Fedl @EJB Haus.
Danach konnte ich nach einem "Haus" über eine ID fragen....

Ich weiss nicht, in wie weit das eine gute Lösung ist.
 
Zurück