ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 【原创】eclipse + JBoss 5 + EJB3开发指南(5):使用配置文件发布Session Bean

【原创】eclipse + JBoss 5 + EJB3开发指南(5):使用配置文件发布Session Bean

原创 Linux操作系统 作者:银河使者 时间:2009-06-08 08:23:31 0 删除 编辑
本文为原创,如需转载,请注明作者和出处,谢谢!
   
    Session Bean除了可以使用注释来发布外,也可以使用相应的配置文件来发布。在这种情况下,就不需要在接口和Session Bean中使用注释了。在JBoss中需要两个文件对Session bean进行配置。这两个文件是ejb-jar.xml和jboss.xml。这两个文件应该META-INF目录中,该目录应该放在jar文件的根目 录。ejb-jar.xml文件负责配置session bean,下面是一个典型的配置代码:

<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->xml version="1.0" encoding="ASCII"?>
<ejb-jar xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:ejb
="http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd"
xsi:schemaLocation
="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd"
version
="3.0">
  
<display-name>MyEJBdisplay-name>
     
<enterprise-beans>
      
<session>
         
<ejb-name>Greeterejb-name>
         
<business-local>service.GreeterBeanLocalbusiness-local>
         
<business-remote>service.GreeterBeanRemotebusiness-remote>
         
<ejb-class>service.GreeterBeanejb-class>
         
<session-type>Statelesssession-type>
         
<transaction-type>Containertransaction-type>
      
session>
   
enterprise-beans>
ejb-jar>

    其中元素就是一个表示,表示当前配置的session bean的名称。分别用来指定本地接口和远程接口。 用来指定session bean的java类

    jboss.xml文件主要用来指定jndi,如下面的代码所示:
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->xml version="1.0"?>
 
<jboss xmlns:xs="http://www.jboss.org/j2ee/schema"
       xs:schemaLocation
="http://www.jboss.org/j2ee/schema jboss_5_0.xsd"
             version
="5.0"> 
   
<enterprise-beans>
      
<session>
         
<ejb-name>Greeterejb-name>
         
<jndi-name>mygreeterjndi-name>
         
<local-jndi-name>mygreeter_locallocal-jndi-name>
      
session>
   
enterprise-beans>
jboss>

    上面的代码中的元素的值和要ejb-jar.xml中的元素的值相同。< jndi-name>用来指定远程的jndi名称。用来指定本地jndi的名称。如果访问远程的 session bean,可以使用下面代码:

<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->  Properties prop = new Properties();
  InitialContext ctx 
= new InitialContext();
  System.out.println(((service.Greeter)ctx.lookup(
"mygreeter")).greet("bill"));

    从上面代码可看出,lookup方法通过“mygreeter”来查找服务端的session bean。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/12921506/viewspace-605415/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
暂无介绍

注册时间:2008-02-08

  • 博文量
    169
  • 访问量
    1056894