JFox(J2EE应用服务器开源项目)

Last Modified: 2003.12.02

EJBMeta的定制


用户也可以随意自定义EJBMetaInfo,参考Class org.jfox.ejb.examples.meta.HelloMeta,下面是其 getMetaInfo 的实现代码:


     public EJBMetaInfo getEJBMetaInfo() {
      // 自定义的Stateless SessionBean
       return EJBMetaHelper. createEJBMeta (
"EJB Hello with custom meta info",       //description
                        "Hello",                            // ejb name
"org.jfox.ejb.examples.meta.HelloHome", // Home class
                        "org.jfox.ejb.examples.meta.Hello",      // Remote class
                        "org.jfox.ejb.examples.meta.HelloBean",   // Bean class
                         SessionTxMetaInfo.not_support(),      // Transaction type
                        "org/jfox/ejb/examples/meta/HelloEJB",   // jndi name
                        false                               // is Stateful SessionBean
);
     }


通过提供完整的参数给EJBMetaHelper. createEJBMeta,定义了返回的EJBMetaInfo的内容, 这使得可以适应那些EJB命名不规范或者希望自定义Transaction Type或者自定义jndi名称等等的EJB组件,使得布署EJB更加灵活。

另外值得注意的是,JFox是根据EJB jar 包中的Meta类来自动布署EJB组件的,所以请确保每个EJB都有一个Meta类与之对应, 并且保证Meta类提供的信息是正确的,否则,你的EJB可能不能布署或者布署失败!