Crear los Message-Driven Beans – Suscriptor

A continuación se describe el proceso para crear los MDBs, los cuales serán invocados por el contenedor cuando la aplicación Muebles de los Alpes publique modificaciones de los vendedores en el MOM. La aplicación de Recursos Humanos recibe y procesa estos mensajes por medio de un MDB.

1. Sobre el proyecto EJB haga click con el botón derecho del mouse, seleccione New→Others y en la lista de categorías seleccione Java EE, en la parte derecha (File Types) seleccione Message-Driven Beans.

screen10 screen1-2

2. En la ventana de New Message-Driven Bean ingrese los valores que se muestra en la siguiente imagen para crear un MDB llamado RecursosHumanosMessage

screen11

Observe la clase java generada:

screen12

3. Anote la clase para que se inyecte el MessageDrivenContext:

screen13

4. Implemente el código necesario en el método onMessage para extraer el texto enviado por el publicador e imprimirlo por consola.

public void onMessage(Message message) {
   TextMessage msg = null;
    try {
     if (message instanceof TextMessage) {
       msg = (TextMessage) message;
       Logger.getLogger(RecursosHumanosMessage.class.getName()).log(Level.INFO,
           "Recursos Humanos: Se ha recibido la notificación de modificación del empleado \n"+ msg.getText());
            } else {
                Logger.getLogger(RecursosHumanosMessage.class.getName()).log(Level.SEVERE,
                        "Mensaje de tipo equivocado: " + message.getClass().getName());
     }
    } catch (JMSException e) {
      e.printStackTrace();
      mdc.setRollbackOnly();
    } catch (Throwable te) {
      te.printStackTrace();
   }
}