...
| Bloque de código | ||
|---|---|---|
| ||
@MessageDriven(activationConfig = {
@ActivationConfigProperty(
propertyName = "destinationType",
propertyValue = "javax.jms.Topic"
),
@ActivationConfigProperty(
propertyName = "destination",
propertyValue = "topic/pruebaPushTopic"
)
})
@Name("pushReceiver")
public class pushReceiver implements MessageListener {
@Logger
private Log log;
@Override
public void onMessage(Message jmsMessage) {
try {
String message = jmsMessage.getStringProperty("message");
Events.instance().raiseEvent(new PushEvent(message));
} catch (JMSException ex) {
log.error("Problem sending push event message.", ex);
}
}
} |
...
Ahora, usamos PushManager#fireEvent() para lanzar eventos JMS desde un nodo del cluster, que permite después lanzar los eventos de JBoss Seam en todos los nodos el cluster y asi enviar el mensaje al canal push correspondiente:
| Bloque de código | ||
|---|---|---|
| ||
@In
private PushManager pushManager;
public void onSomeEntityChange(Entity entity) {
pushManager.fireEvent(new PushEvent(entity.getSomeProperty()));
} |
Más información sobre JMS:
- Como configurar un tema (topic) JMS en el servidor Weblogic 12.2.
- Como ver los mensjaes de un tema (topic) JMS en el servidor Weblogic 12.2.