web应用在JBOSS5中调用EJB3组件出了问题,求教

sd8023580 2011-02-27 05:44:02
我使用的是JBOSS5.0.0GA版本,新做了一个EJB3.0的例子,无状态会话BEAN,并且是成功部署到JBOSS容器里面,理由是:我在启动JBOSS时候看到服务器去识别了部署的EJB组件。我的组件写法是:

接口:
@Remote
public interface GreeterRemote {

public String greet(String message);
public List<Greeting> getAllGreetings();
}
实现:
@Stateless(mappedName = "greeter")
public class Greeter implements GreeterRemote {
......略

没贴出的部分是包名还有Greeting的引用,这个保证都是有的。

然后,我在JBOSS另外建了个WEB工程,写了个页面调用servlet,问题是出在这里:

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
Properties prop = new Properties();
// 设置相关的属性值

prop.setProperty(Context.PROVIDER_URL, "127.0.0.1:1099");
prop.setProperty(Context.INITIAL_CONTEXT_FACTORY, "org.jnp.interfaces.NamingContextFactory");
prop.setProperty("java.naming.factory.url.pkgs", "org.jboss.naming");
InitialContext ctx = new InitialContext(prop);

// 开始调用Greeter接口的方法

Greeter greeter = (Greeter) ctx.lookup("Greeter/remote");


这个时候,编译出错,Greeter说找不到,project和EJB组件是在同一个JBOSS里面,接下来运行web工程的时候,这个错误就以500的形式出现了。

请问下,如果组件部署在JBOSS容器里,如何让同一容器的WEB应用能调用到组件里的服务,也谷歌过相关内容,只是贴出个客户端调用的代码给你,中间一些东西都没怎么说。特来请教,希望能给予解答,谢谢。

...全文
89 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
紫杉 2013-05-08
  • 打赏
  • 举报
回复
我也遇到同样的问题,求指点迷津。
sd8023580 2011-02-27
  • 打赏
  • 举报
回复
补充一下,尝试过eclipse中的快捷键import,确实找不到远程的会话BEAN。
我的开发环境是:jboss5.0.0ga+eclipse3.4.2+ejb3.0

6,787

社区成员

发帖
与我相关
我的任务
社区描述
JBoss技术交流
社区管理员
  • JBoss技术交流社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧