Codice completo

package it.html.ejb.messagedriven;

//Il componente riceve il messaggio dalla coda e ne scrive il contenuto testuale

public class ConsoleWriterBean implements javax.ejb.MessageDrivenBean,
  javax.jms.MessageListener {
  //Manteniamo il riferimento all'ambiente di esecuzione
  
  private javax.ejb.MessageDrivenContext messageContext = null;
  
  public void setMessageDrivenContext(
    javax.ejb.MessageDrivenContext messageContext)
  
  throws javax.ejb.EJBException {
    this.messageContext = messageContext;
  }
  
  //Creazione del componente
  public void ejbCreate() {
    System.out.println("ConsoleWriter.ejbCreate()");
  }
  
  //Rimozione del componente
  public void ejbRemove() {
    messageContext = null;
    System.out.println("ConsoleWriter.ejbRemove()");
  }
  
  //This method implements the business logic for the EJB
  public void onMessage(javax.jms.Message message) {
    //Scriviamo su console (lato server) il contenuto del messaggio ricevuto
    
    System.out.println("[ConsoleWriter] " + message);
    
    //In un sistema reale, qui di seguito dovrebbero esserci operazioni di logica
    //più o meno complesse (ad esempio si potrebbero utilizzare altri EJB).

  }
}