EJB菜鸟入门三板斧:)

一板斧:
     缓冲池和活化,钝化有什么区别?
     答:根本没有联系,缓冲池是无状态session bean和entity bean
     为了减少使用内存,在内存中使用实例池,当客户端用hone接口
     生成一对象时,就把一个实例赋给它,对象被销毁后,实例再回到
     实例池中。原来是不是会想缓冲池是建在硬盘上的?想想虚拟内存的
     速度,不会那么慢吧?:)而活化钝化是有状态session bean为了保存
     它的状态,把它的状态写入到二级储存中,也就是硬盘了。

二板斧:
     ejb之间是怎么调用的呢?
     答:和客户端调用一样的嘛。先用home接口找到或创建,再用远程接口
     和ejb对象进行互相访问。不会吧?同一台机子还用rmi?没办法,看看
     ejb的定义:EJB的结构是开发和配置基于组件的分布式商务应用程序的
     一种组件结构。用EJB结构开发的应用程序是可伸缩的、事务性的、多
     用户安全的。这些应用程序可能只需编写一次,然而可以在支持EJB规
     范的任务服务器平台上配置。所以这就是为什么ejb适用于高端应用,
     不过新出的local interface改变了这一点:)

三板斧:
     narrow是什么东东?
     narrow是rmi/iiop为了兼容corba而加的一个东东。因为corba为了
     兼容诸如cobol这样的语言,而不支持绝对的强制类型转换。而rmi
     有一些必须要将远程引用从更通用的类型转变成更特殊类型的方法。
     corba提供了明确限制引用为特殊类型的方法。javax.rmi.portable
     remoteobject.narrow()方法抽象了此方法。仅在ejb home或ejb对象
     的远程引用不带特殊Remote接口类型返回时,才需要使用narrow方法。
     这发生在六种情况下:
     1.使用javax.naming.context.lookup()方法获得EJB home接口。
     object ref=jndicontext.lookup("CabinHome");
     CabinHome home=(Cabinhome)portableremoteobject.narrow(ref
     ,CabinHome.class);
     2.使用javax.ejb.handle.getejbobject()方法获得EJB对象引用。
     Handle handle=....//get handle
     object ref=handle.getejbobject();
     CabinHome home=(Cabinhome)portableremoteobject.narrow(ref
     ,CabinHome.class);
     3.使用javax.ejb.homehandle.getejbhome()方法获得ejb home引用。
     Homehandle homehdle=....//get home handle
     EJBhome ref=homehdle.getejbhome();
     CabinHome home=(Cabinhome)portableremoteobject.narrow(ref
     ,CabinHome.class);
     4.使用javax.ejb.ejbmetadata.getejbhome()方法获得ejb home引用。
     EJBmetadata metadata=homehdle.getejbmetadata();
     ejbhome ref=metadata.getejbhome();
     CabinHome home=(Cabinhome)portableremoteobject.narrow(ref
     ,CabinHome.class);
     5.从一个home接口查找方法的返回集合中获得ejb对象引用。
     6.从任何商务对象中返回广泛的ejb对象。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: 这个错误提示意思是需要安装Tomee才能支持EAR/EJB部署。Tomee是一个基于Tomcat的Java EE应用服务器,支持Java EE 6和7规范。如果你想部署EAR/EJB应用,需要安装Tomee并将应用部署到Tomee中。 ### 回答2: 错误:需要Tomee支持EAR / EJB部署。 这个错误通常出现在企业级Java应用程序中,在进行应用程序部署或升级时可能会遇到。错误的原因在于应用程序所依赖的服务器环境没有提供足够的支持。 EJB(Enterprise Java Beans)是Java企业级应用程序的一种核心组件,而EAR(Enterprise Archive)则是一种Java EE应用程序的归档格式。要在服务器上成功部署这些应用程序,需要确保服务器环境能够支持它们。 Tomee是一种Java EE服务器,它提供了对EJB和EAR部署的完整支持。如果您遇到“需要Tomee支持EAR / EJB部署”的错误,则说明您的服务器环境缺少这些支持。 要解决这个错误,最简单的方法是将您的应用程序部署到Tomee服务器上。如果您不想更改服务器环境,则可以尝试通过安装必要的库和组件来添加对EJB和EAR的支持。具体步骤可能因服务器环境而异,但通常需要安装Java EE SDK和相关工具。 总之,error: tomee required to support ear/ejb deployment的错误是由于服务器环境不支持EJB和EAR部署而导致的。解决方法是将应用程序部署到Tomee服务器上或在服务器环境中添加必要的库和组件以支持这些应用程序。 ### 回答3: 这个错误是指你在部署EAR(Enterprise Archive)或EJB(Enterprise JavaBean)应用程序时需要使用Tomee(Tomcat的一个扩展),因为它提供了额外的特性和支持。 Tomee是一个全面的Java EE应用服务器,它是Tomcat的扩展,功能上几乎涵盖了整个JavaEE规范。它支持JavaEE应用程序的部署,包括WAR,EAR,EJB和JAR等各种格式。 通常,在开发JavaEE应用程序时,我们使用Eclipse或IntelliJ IDEA等集成开发环境(IDE)进行编码,然后将应用程序部署到应用服务器中进行测试和运行。但是,标准的Tomcat不支持所有JavaEE规范,例如EJB。这就是为什么需要Tomee。 如果你遇到“error: tomee required to support ear/ejb deployment"错误,意味着你要部署的应用程序使用到了EAR或EJB,而你的服务器上没有安装Tomee。为了解决这个问题,你需要安装适用于你的操作系统的Tomee版本,并将它配置到你的IDE中以便部署和测试。安装Tomee的过程可能因操作系统和版本而异,可以通过Tomee的官方网站查找相关信息。 总之,如果你需要部署JavaEE的EAR或EJB应用程序,那么Tomee是必须要安装的,否则你就会遇到“error: tomee required to support ear/ejb deployment"错误。安装Tomee后,你就可以愉快地在Tomcat服务器上运行JavaEE应用程序了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xxcc

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值