WEB开发网
开发学院软件开发Java Apache Geronimo JNDI 命名和 Java 资源连接池,第... 阅读

Apache Geronimo JNDI 命名和 Java 资源连接池,第 2 部分: 使用 Java Message Service

 2010-04-23 00:00:00 来源:WEB开发网   
核心提示: 先前在会话 bean 描述符的 <ref-name> 标记中声明的名称现在按照其完整的 JNDI 名称列出,所有名称都带有符合建议的 Java 命名约定的前缀,Apache Geronimo JNDI 命名和 Java 资源连接池,第 2 部分: 使用 Java Message Se

先前在会话 bean 描述符的 <ref-name> 标记中声明的名称现在按照其完整的 JNDI 名称列出。所有名称都带有符合建议的 Java 命名约定的前缀。此外请注意,特殊兴趣组及其相关主题列于此文件中。清单 7 中的代码显示了如何在使用完整 JNDI 名称的 MDB 中执行 InterestGroupEntityBean JNDI 查找。

清单 7. ServiceMonitorMessageBean.java 的部分清单

        package com.service.customer.ejb; 
 
public class ServiceMonitorMessageBean implements MessageDrivenBean, MessageListener 
{ 
  private transient MessageDrivenContext mdc = null; 
  private InterestGroupHome groupHome = null; 
  private ResourceBundle  bundle = null; 
  private String      JNDI_GROUP_EJB = null; 
 
  public void ejbCreate() 
  { 
   InitialContext initial = null; 
   Object objref = null; 
 
   bundle = ResourceBundle.getBundle("customer", Locale.getDefault(), 
ServiceMonitorMessageBean.class.getClassLoader()); 
   JNDI_GROUP_EJB = bundle.getString("jndi.group.ejb"); 
 
   try 
   { 
     initial = new InitialContext(); 
     objref = initial.lookup(JNDI_GROUP_EJB); 
     groupHome = (InterestGroupHome)PortableRemoteObject.narrow(objref, 
InterestGroupHome.class); 
   } // end try 
 
   catch (Exception e) 
   { 
     e.printStackTrace(); 
   } // end catch 
  } // end ejbCreate 
 
  public void onMessage(Message msg) 
  { 
   boolean entryFound = false; 
   GroupKey groupKey = null; 
   InterestGroup group = null; 
   ObjectMessage objMsg = null; 
   Vector tmpVector = null; 
 
   // Extract message from Topic 
   try 
   { 
     if (msg instanceof ObjectMessage) 
     { 
      objMsg = (ObjectMessage)msg; 
      groupKey = (GroupKey)objMsg.getObject(); 
      System.out.println("JMS - id: " + groupKey.clientID + "\t" + 
                "group: " + groupKey.groupName + "\t" + 
                "email: " + groupKey.emailAddress); 
     } // end if 
   } // end try 
 
   catch (Exception e) 
   { 
     e.printStackTrace(); 
   } // end catch 
 
   // Create "group" if no entry found 
   if (!entryFound) 
   { 
     try 
     { 
      group = groupHome.create(groupKey); 
     } // end try 
 
     catch (Exception e) 
     { 
      e.printStackTrace(); 
     } // end catch 
   } // end if 
  } // end onMessage 
} // end ServiceMonitorMessageBean 

上一页  4 5 6 7 8 9 10  下一页

Tags:Apache Geronimo JNDI

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