2011-11-17 330 views
1

如果我創建MessageDriven bean - 它是否可以通過JNDI在我的應用中使用其他組件?如果是這樣,我如何找到/指定名稱來查找它?如果這有什麼區別,我正在部署到glassfish?通過JNDI查找消息驅動Bean

回答

0

用於MDB分配JNDI名稱不被Java EE規範(的EJB 3.0章21.2.3)需要:

至少,EJB容器必須向提供一個JNDI API的名稱空間企業bean 實例。當實例調用javax.naming.InitialContext默認(無參數)構造函數時,EJB容器必須使名稱空間可用於實例。

  • 的其他企業bean的業務接口
  • [...]

MDB沒有資格,因爲他們沒有一個業務接口。另外,由於在另一個EJB/MDB中配置MDB將毫無意義(您的用例是什麼,BTW?),可能會在Glassfish中跳過。

我已經看到,WebLogic,for example允許在其專有的部署描述符,但我從來沒有使用它。