JBOSS部署EJB3小测试程序的问题

xiesisi3 2010-05-26 05:08:04
先声明,本人初学ejb3,问的问题白痴,别拍.
补充一点,问题为100分,如果谁帮我解决,追加100分。
因为我担心这个帖子也会无下文,之前有四个人发过同样的问题。
http://topic.csdn.net/u/20080526/02/1DE6F4F8-B084-4D09-A067-C19CE13CFFBC.html
http://topic.csdn.net/u/20080911/19/D5342302-8887-4DE9-8CDA-38501D262400.html
http://topic.csdn.net/u/20081106/10/326AD298-1BA5-44B5-91CD-EDBC79671D5F.html
http://topic.csdn.net/u/20090115/18/D4D3E1E1-E232-4C5F-90C6-EFED53824D62.html

我的目的:
http://blog.sina.com.cn/s/blog_5f5fff010100cmc0.html
这篇帖子里讲述了如何用myeclipse+jboss来配置运行第一个Ejb3的程序,我想完全按照它的步骤做然后做一个测试用例
java编译运行环境正常,jboss版本是4.0.5.GA解压版,myeclipse是6.5

出的错误:
javax.naming.NameNotFoundException: FirstEjbBean not bound
at org.jnp.server.NamingServer.getBinding(NamingServer.java:529)
at org.jnp.server.NamingServer.getBinding(NamingServer.java:537)
…………中间还有一大堆,不看也没关系
at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:587)
at javax.naming.InitialContext.lookup(Unknown Source)
at com.feiyu.ejb.FirstEjbClient.main(FirstEjbClient.java:12)

主要代码:
=====================>
接口FirstEjb
package com.feiyu.ejb;
public interface FirstEjb {
public String saySomething(String name);
}

FirstEjbBean
package com.feiyu.ejb;
import javax.ejb.Remote;
import javax.ejb.Stateless;
@Stateless
@Remote
public class FirstEjbBean implements FirstEjb {
public String saySomething(String name) {
return "Hello, " + name;
}
}

=====================>
测试类,注意,虽然包名相同,但与上面是位于不同的项目,上面是EJB项目,这里是Java Project(所以采用的是@Remote)
package com.feiyu.ejb;
import javax.naming.InitialContext;
import javax.naming.NamingException;
public class FirstEjbClient {
public static void main(String args[]) {
try {
InitialContext context = new InitialContext();
FirstEjb firstEjb = (FirstEjb) context.lookup("FirstEjbBean/remote");
String s = firstEjb.saySomething("xiesisi");
System.out.println(s);
} catch (NamingException e) {
e.printStackTrace();
}
}
}

jndi.properties
java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces
java.naming.provider.url=localhost



补充:
JBoss服务器在Myeclipse内部启动,并通过右键->Add Deployment将EJB项目部署进入JBoss的server/default/deploy/目录
其中部署后目录结构如下:
ejb_01.jar
-----com/feiyu/ejb/FirstEjb.class,com/feiyu/ejb/FirstEjbBean.class
-----META-INF/MANIFEST.MF
另外,我发现在JBoss服务器启动的时候,没有出现加载FirstEjbBean之类的提示,而且无论是deploy还是undeploy该EJB项目,JBOSS服务器控制台都无内容输出,但实际上目录有变化(undeploy时目录消失,deploy时目录出现)
...全文
67 点赞 收藏 6
写回复
6 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
jiyeyuran 2010-06-13
为什么不需要序列化EJB,也就是FirstEjbBean
回复
xiesisi3 2010-05-31
问题解决!
将JBoss版本换成5.1,就可以了..难道4.0.5GA不支持EJB3.0吗?太奇怪了..
回复
xiesisi3 2010-05-27
冒死自己再UP
回复
xiesisi3 2010-05-26
自己UP
回复
sakeys 2010-05-26
学习~~~~~~~~~~~
回复
sakeys 2010-05-26
看不懂啊 ,哥们
回复
相关推荐
发帖
JBoss技术交流
创建于2007-07-26

6783

社区成员

JBoss技术交流
申请成为版主
帖子事件
创建了帖子
2010-05-26 05:08
社区公告
暂无公告