本文为原创,如需转载,请注明作者和出处,谢谢!
Session Bean除了可以使用注释来发布外,也可以使用相应的配置文件来发布。在这种情况下,就不需要在接口和Session Bean中使用注释了。在JBoss中需要两个文件对Session bean进行配置。这两个文件是ejb-jar.xml和jboss.xml。这两个文件应该META-INF目录中,该目录应该放在jar文件的根目 录。ejb-jar.xml文件负责配置session bean,下面是一个典型的配置代码:
- <?xmlversion="1.0"encoding="ASCII"?>
- <ejb-jarxmlns: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/javaeehttp://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd"
- version="3.0">
- <display-name>MyEJB</display-name>
- <enterprise-beans>
- <session>
- <ejb-name>Greeter</ejb-name>
- <business-local>service.GreeterBeanLocal</business-local>
- <business-remote>service.GreeterBeanRemote</business-remote>
- <ejb-class>service.GreeterBean</ejb-class>
- <session-type>Stateless</session-type>
- <transaction-type>Container</transaction-type>
- </session>
- </enterprise-beans>
- </ejb-jar>
其中<ejb-name>元素就是一个表示,表示当前配置的session bean的名称。<business-local>和<bussiness-remote>分别用来指定本地接口和远程接口。 <ejb-class>用来指定session bean的java类
jboss.xml文件主要用来指定jndi,如下面的代码所示:<!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
-->
- <?xmlversion="1.0"?>
- <jbossxmlns:xs="http://www.jboss.org/j2ee/schema"
- xs:schemaLocation="http://www.jboss.org/j2ee/schemajboss_5_0.xsd"
- version="5.0">
- <enterprise-beans>
- <session>
- <ejb-name>Greeter</ejb-name>
- <jndi-name>mygreeter</jndi-name>
- <local-jndi-name>mygreeter_local</local-jndi-name>
- </session>
- </enterprise-beans>
- </jboss>
上面的代码中的<ejb-name>元素的值和要ejb-jar.xml中的<ejb-name>元素的值相同。< jndi-name>用来指定远程的jndi名称。<local-jndi-name>用来指定本地jndi的名称。如果访问远程的 session bean,可以使用下面代码:<!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
-->
- Propertiesprop=newProperties();
- InitialContextctx=newInitialContext();
- System.out.println(((service.Greeter)ctx.lookup("mygreeter")).greet("bill"));
从上面代码可看出,lookup方法通过“mygreeter”来查找服务端的session bean。
分享到:
相关推荐
(5):使用配置文件发布Session Bean 12 (6):JBOSS中测试中的常用错误 13 (7):JBoss只能本地访问,不能通过ip远程访问解决办法 15 (8):JBoss EJB3(HelloWorld)备忘记 15 摘要: 15 备忘记开始: 16 [1] ...
第二部分详细讲解了jsf ri、jta、jndi、rmi、jms、javamail、ejb 3的session bean、message driven bean、jpa、jax-ws 2、jaas等java ee知识,这部分知识以jsf+ejb 3+jpa整合开发为重点,通过使用netbeans ide工具...
} } } 5、在classPath下增加“jboss-ejb-client.properties”文件,内容如下 remote.connectionprovider.create.options.org.xnio.Options.SSL_ENABLED=false remote.connections=default remote.connection....
使用的是eclipse创建ejb项目,并使用wildfly(jboss也可以)进行有状态/无状态sessionbean的部署
jboss5 as developemnt是一本很好的书,基本上包括了从entitybean,sessionbean,messagedrivenbean,managedbean的开发。 从ejb工程,到jsf2.0工程,很好的示例,手把手交的。底层连接数据库,开发工具是eclipse ...
JBoss EJB3 ObjectWeb EasyBeans (aka JOnAS EJB3Container) 集群技术 JBoss Infinispan (from Redhat) Gigaspaces Terracotta WADI 基于数据库的Session集群配置教程 基于Terracota的Session集群配置教程 Web ...
KgShop,是国内一款快速/稳定/安全的开源电子商城系统,采用linux,mysql,srutsEX,hibernate,ejb3等技术,Kghop第一版诞生于2010年,经过多年开发,Kgshop系统已拥有快速、稳定、支持大量并发访问等软件特性,是10万...
JBoss Seam 简介......................................................................................................................................................................... 11 Chapter 1. ...
2个目标文件,FTP的目标是:(1)提高文件的共享性(计算机程序和/或数据),(2)鼓励间接地(通过程序)使用远程计算机,(3)保护用户因主机之间的文件存储系统导致的变化,(4)为了可靠和高效地传输,虽然用户...
2个目标文件,FTP的目标是:(1)提高文件的共享性(计算机程序和/或数据),(2)鼓励间接地(通过程序)使用远程计算机,(3)保护用户因主机之间的文件存储系统导致的变化,(4)为了可靠和高效地传输,虽然用户...