WEB开发网
开发学院软件开发Java 用社交网络连接 WebSphere MQ:列队管理器和 MQ 应... 阅读

用社交网络连接 WebSphere MQ:列队管理器和 MQ 应用程序的 Twitter 通知

 2010-06-14 00:00:00 来源:WEB开发网   
核心提示: 查看原图(大图)MQ 事件消息 MDBWebSphere MQ 通过 MQ Events Messaging 提供了一个队列管理器内的错误、警告和其他重大动作的相关信息,在配置了以上功能后,用社交网络连接 WebSphere MQ:列队管理器和 MQ 应用程序的 Twitter 通知(4),We

查看原图(大图)

MQ 事件消息 MDB

WebSphere MQ 通过 MQ Events Messaging 提供了一个队列管理器内的错误、警告和其他重大动作的相关信息。在配置了以上功能后,WebSphere MQ 会将一个消息放到一个特定队列上,然后应用程序可以从这个队列中使用这个消息并根据这个消息的内容执行动作。

清单 3 显示了另一个 MDB,但这次它被配置为从 SYSTEM.ADMIN.CONFIG.EVENT 队列中读取消息。这个 MDB 获取消息并用简单的逻辑决定将什么消息发送给 Twitter:

清单 3. MQEventMDB.java: onMessage() 方法

public void onMessage(Message msg) { 
 
  if(msg == null)return; 
  if (msg instanceof TextMessage) { 
   TextMessage txtMsg = (TextMessage) msg; 
  try { 
      System.out.println("Received TextMessage: " + txtMsg.getText()); 
     } catch (JMSException e) { 
      e.printStackTrace(); 
     } 
   } 
 
  if (msg instanceof BytesMessage) { 
   JMSBytesMessage bytesMsg = (JMSBytesMessage) msg; 
   int bodySize; 
   try { 
     bodySize = (int) bytesMsg.getBodyLength(); 
     byte[] data = new byte[bodySize]; 
   bytesMsg.readBytes(data); 
   ByteArrayInputStream bais = new ByteArrayInputStream(data); 
   DataInput dataInput = new DataInputStream(bais); 
   PCFMessage response = new PCFMessage(dataInput); 
   int reason = response.getReason(); 
   int type = response.getIntParameterValue(MQConstants.MQIACF_OBJECT_TYPE); 
   if(type == MQConstants.MQOT_Q) { 
     publishQueueEvent(response, null); 
   } else { 
     System.out.println("Object Type received: " + reason); 
   } 
   } catch (Exception e) { 
     e.printStackTrace(); 
   } 
  } 
} 

上一页  1 2 3 4 5  下一页

Tags:社交 网络 连接

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接