用户操作
[留言]  [发消息]  [加为好友] 
订阅我的博客
XML聚合    FeedSky
订阅到鲜果
订阅到Google
订阅到抓虾
maqujun的公告
因为Javaeye无法登陆,所以新写的博客会转向CSDN
文章分类
存档

原创  Embedded EJB3用java代码作为客户端调用bug 收藏

目前Embedded EJB3的最新版本是alpha9,但是这个最新版本有一个最大的bug就是无法再Tomcat中运行。当然还有其他很多bug,毕竟目前还只是alpha版本。所以我选择的是前一版本alpha8.

Embedded EJB3运用了目前动态AOP的方式。在Tomcat启动时通过web.xml中的设置动态加载Ejb3的Listener。同时还允许通过URL实现动态部署EJB3。就是意味着只要有Embedded Ejb3就可以在任何容器中运行EJB3。

可惜还没有正式版本的诞生,bug很多。期待中...


在jboss中我们可以在eclipse中直接通过以下代码来调用运行中的EJB3 Service.
Properties props = new Properties();
props.setProperty("java.naming.factory.initial","org.jnp.interfaces.NamingContextFactory");
props.setProperty("java.naming.provider.url", "localhost:1099");
props.setProperty("java.naming.factory.url.pkgs", "org.jboss.naming");
InitialContext ctx = new InitialContext(props);
Object obj = ctx.lookup("HelloWorldBean/remote");

但是在Embedded EJB3版本中它的客户端的properties与jboss中的不同变为:
props.put("java.naming.factory.initial", "org.jnp.interfaces.LocalOnlyContextFactory");
props.put("java.naming.factory.url.pkgs","org.jboss.naming:org.jnp.interfaces");

我在tomcat中运行我的Embedded Ejb3。使用jsp客户端可以调用EJB3。
但是在eclipse中直接以上写入客户代码却throw Exception意味着Embedded EJB3只能在服务器能调用?不支持直接的java代码调用?从客户端的properties中可以看出embed版本去除了url这一项,并且把factory改为了LocalOnlyContextFactory,从这名字上去理解就是只允许本地容器内调用。

 

发表于 @ 2006年12月19日 10:17:00 | 评论( loading... ) | 编辑| 举报| 收藏

旧一篇:The solution of weblogic webservice Exception. | 新一篇:echo2 感想

  • 发表评论
  • 评论内容:
  •  
Copyright © maqujun
Powered by CSDN Blog