Ciao,

In teoria dovresti postare anche l'entity bean dell'altra classe.

Comunque fare una foreign tra due tabelle con ejb3, è la cosa più semplice che ci possa essere, in quanto non hai bisogno di scrivere query e di conseguenza non hai bisogno di far la inner join col codice SQL.

Innanzitutto devi assicurarti che i due entity bean abbiano queste righe di codice:



@JoinColumn(name = "idtabellaprincipale", referencedColumnName = "idtabellasecondaria", insertable = false, updatable = false)
@ManyToOne
@OneToOne(optional = false)




@OneToOne(cascade = CascadeType.ALL, mappedBy = "idtabellasecondaria")

Consiglio, se usi netbeans fatti creare tutto da lui...se non sai cosa fare ti invio il video che ho creato...


Fatto ciò basta che ti setti i campi come fai normalmente, cioè li recuperi con il request.getParameter(); e poi li setti con gli oggetti delle due classi per esempio:



TabellaPrincipale oggetto = new TabellaPrincipale();
TabellaSecondaria oggettoDue = new TabellaSecondaria();

oggetto.SetNomeCampo(NomeRecuperato);

Infine:

oggetto.setTabellaSecondaria(oggettoSecondario);

ti chiami il metodo nativo create, ed il gioco è fatto.