Prova che ti riprova sono riuscito a definire lo Stateful Session Bean correttamente. Purtroppo però non ho risolto la mia problematica.
Spiego meglio... (anche sotto suggerimento di lele che ringrazio)
Ho definito questo EJB Stateful Session Bean
codice:
package test;
import javax.ejb.CreateException;
import javax.ejb.Stateful;
@Stateful
public class BeanUtenteBean implements BeanUtenteRemote {
private String utente;
public void ejbCreate() throws CreateException {
}
public void settaUtente(String nome) {
utente = nome;
}
public String leggiUtente() {
return utente;
}
}
e questa è la sua interfaccia remota
codice:
package test;
import javax.ejb.Remote;
/**
*
* @author trabanelli
*/
@Remote
public interface BeanUtenteRemote {
void settaUtente(String nome);
String leggiUtente();
}
dall'applicazione1 ho definito un managed bean in questo modo
codice:
package ls_main;
import javax.ejb.EJB;
import test.BeanUtenteRemote;
/**
*
* @author trabanelli
*/
public class BeanUtente {
@EJB
private BeanUtenteRemote beanUtenteBean;
public BeanUtenteRemote getBeanUtenteBean() {
return beanUtenteBean;
}
/** Creates a new instance of BeanUtente */
public BeanUtente() {
}
}
e all'interno della mia page1.jsp accedo ai metodi dello stateful session bean
codice:
public String button2_action() {
try
{
getBeanUtente().getBeanUtenteBean().settaUtente(textField1.getText().toString());
}
catch(Exception e)
{
error("errore: " + e );
}
return null;
}
public String button3_action() {
textArea1.setText(getBeanUtente().getBeanUtenteBean().leggiUtente());
return null;
}
In questo modo dall'applicazione1 funziona tutto quanto ogni utente vede la sua variabile.
Il mio problema è che questa variabile, all'interno dello Stateful Session Bean, deve essere visibile da altre applicazioni (progetti) aperti sempre all'interno della finestra del browser.
Spero di avervi aiutato ad aiutarmi!!