我觉得做一个客户端调用一个实体bean算是一个完整列子吧,实体bean这里不就不详细说了。客户端调用需要使用会话bean这个也写好吧。然后打包这个EJB,这里EJB部署到jboss下就可以使用了
10年积累的做网站、成都网站制作经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站设计后付款的网站建设流程,更有宁安免费网站建设让你可以放心的选择与我们合作。
另外我使用oracle数据库,所以在jboss下的deploy下得增加oracle数据源配置文件,如下:
- oracledb-ds.xml
oracleDS - jdbc:oracle:thin:@localhost:1521:cmmboss
oracle.jdbc.driver.OracleDriver system cmmboss oracle10g
注意这个jndi名字和你调用的时候一致,这个实在EJB这个里面的persistence.xml里面一致部署的话。EJB打包的jar可以单独部署于deploy下面。
也可以打包成ear里面
ear的结构:mytestEJBweb.ear
- META-INF
- --application.xml
- testEJBweb.war
- testEJB.jar
客户端调用,可以是普通类,也可以是servlet 。我这里以一个servlet距离
在servlet初始化的时候处理
- public void init() throws ServletException {
- Hashtable properties = new Hashtable();
- properties.put(Context.INITIAL_CONTEXT_FACTORY, "org.jnp.interfaces.NamingContextFactory");
- properties.put(Context.PROVIDER_URL, "jnp://localhost:1100");
这里特别注意的是使用jnp方式访问,其他容器都有自己的访问方式,比如weblogic使用T3,ip如果是夸ip访问注意ip绑定,还有端口号是jnp的端口1100,而不是http端口8080等
- properties.put(Context.URL_PKG_PREFIXES, "org.jboss.naming:org.jnp.interfaces");
- try {
- InitialContext ctx = new InitialContext(properties);
- ComputerBeanRemote computerBean = (ComputerBeanRemote)ctx.lookup("mytestEJBweb/ComputerBean/remote");
这里首先调用的是ear这个资源的jndi路径(我第一次使用了war的资源路径,唉对jndi没有理解,调试了一个晚上,希望大家不要犯我这样的错误),然后再是EJB bean的路径,
- this.computerBean = computerBean;
- } catch (NamingException e) {
- e.printStackTrace();
- }
- }
【编辑推荐】
分享题目:浅谈如何将EJB部署在Jboss下
标题网址:http://www.shufengxianlan.com/qtweb/news21/50221.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联