浅谈如何将EJB部署在Jboss下

 
   | |

导读:笔记根据自己的经验为大家介绍了如何在JBoss下部署EJB并给出容易出错的地方的注意事项。

关键词:EJB Jboss Jboss部署

 
正在加载数据...

  我觉得做一个客户端调用一个实体bean算是一个完整列子吧,实体bean这里不就不详细说了。客户端调用需要使用会话bean这个也写好吧。然后打包这个EJB,这里EJB部署到jboss下就可以使用了

  另外我使用oracle数据库,所以在jboss下的deploy下得增加oracle数据源配置文件,如下:

以下是引用片段:
oracledb-ds.xml
   <datasources>
      <local-tx-datasource>
      <jndi-name>oracleDS</jndi-name>
      <connection-url>
          jdbc:oracle:thin:@localhost:1521:cmmboss
      </connection-url>
         <driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
         <user-name>system</user-name>
         <password>cmmboss</password>
         <metadata>
            <type-mapping>oracle10g</type-mapping>
         </metadata>
   </local-tx-datasource>
   </datasources>

  注意这个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();
   } 
  }  


JBoss 4.0简化了中间件的开发
 JBoss 4.0 简化了中间件的开发(一)
 JBoss 4.0 简化了中间件的开发(二)
 JBoss用EAP 5.0实现组件化
 Java平台的企业级Ruby解决方案:JBoss的TorqueBox
 JBoss的两种类隔离机制配置说明
 浅谈如何将EJB部署在Jboss下
 配置JBoss如何从数据库里读取信息

原文出处:http://developer.51cto.com/art/200906/132321.htm
 
来源:51cto    作者:fruitking    
 
 
 
 
 

JBoss Web服务

 
在每年的用户会议上,凭借其企业级应用平台(EAP)5.0,红帽的JBoss集团围绕核心JBoss微容器进行努力,已经可以与各种编程模型对接……
 
数据服务存在的问题造成SOA性能受到影响。红帽公司的Craig Muzilla对一些常见的数据服务问题以及关于开源治理的未来目标进行了探讨。
 
如果你正在吹捧面向服务的架构,Frank Cohen相信你将需要改变一下步调才能成功地从实验品走向的产品。他的项目FastSOA是一种不同的架构,它利用了XML查询语言(XML Query Language,XQuery),并在中间层使用了本地XML数据库来处理J2EE应用服务器的可扩展性和性能问题。
 
在JavaOne大会上,JBoss公司产品主管Pierre Fricke并没有谈与Red Hat公司合并一事。他谈到了支持新的Java EE5的第一版JBoss Seam,并且他还谈到了Seam与Ajax的前景以及JBoss将加入NetBeans社区。
 
Linux的先驱者Red Hat收购了开放源码中间件供应商Jboss。在上周的两家公司的CEO的远程电话会议上发布了这个合并的消息,这将会形成一个主要的新SOA供应商。

热门技术手册排行

 

随着开源技术越来越成熟,一个稍有开发经验的人通过学习就可以用开源的产品和技术构建一套可用的系统。对于从事软件开发的人员,尤其是对Java或动态语言相关领域的人来说,“开源”也许是他们最喜爱的单词。但是,很多时候我们需要的不仅仅是一个可用的系统,而是希望这个系统开发更简易、性能更高和扩展性更好等。这确实是一个令人头痛的问题。本指南很多地方都是点到为止,要深入了解相关信息的读者请借助参考资料、网站等自行挖掘。

 

本专题分六部分探讨SOA设计模式,当初设计面向服务架构的一大初衷就是降低服务间耦合度,由此提高服务的灵活性和自由度。

 

业务流程管理(business process management,bpm)不是一个新概念,甚至不是一个新名词。它是从相关的业务流程变革领域,如业务流程改进(bpi)、业务流程重组(bpr)、业务流程革新中发展起来的。流程管理技术也是从早期的工作流管理、eai、流程自动化、流程集成、流程建模、流程优化等技术中发展起来的。

 

TOAGF是一个架构框架,简而言之,TOGAF是一种协助发展,验收,运行,使用,和维护架构的工具。它是基于一个迭代(Iterative)的过程模型,支持最佳实践和一套可重用的现有架构资产。

 

云计算的概念越来越流行,Amazon、Google和IBM是第一批将云计算引入公众视线的公司。云计算就是新的Web2.0,一种既有技术上的市场绽放。

 

Mashup是一个非常cool的新的应用程序种类。如果你想真正的了解它们,我们需要回过头来看看你现在的计算机,其实它就是一个非常好的帮助你理解mashup的模型。现在开源的操作系统无疑是非常好的apis的集合或应用程序编程接口,帮助开发者去构建其应用程序。计算机本身也是一个很好的为用户提供接口的例子,键盘和鼠标可以被理解为你通过计算机的接口而使用的不同的应用程序。本技术手册为读者提供了一些相关信息,如果需要深入了解mashup,读者可以借助其他参考资源。

查看更多
 
 

登录TechTarget中国

关闭
本服务仅向TechTarget中国的会员开放,请登录或立即免费注册
电子邮件地址:
请输入您的电子邮件地址
密码:
下次自动登录