java - 将 JBOSS 中的 war 中的模块中存在的 ejb3 调用为 7.1

标签 java jboss ejb-3.0 jndi

我在尝试从 war 文件调用 JBoss 7 模块中存在的 ejb3 时遇到问题。请查看以下详细信息-

这是本地界面-

package com.uniteller.switchcore.cs.iface;

import javax.ejb.Local;
import javax.ejb.Remote;

@Local
public interface CSTimer {
     public boolean init(  );
}

EJB:

package com.uniteller.switchcore.cs.impl;

import javax.ejb.LocalBean;
import javax.ejb.Stateless;


    @Stateless
    @LocalBean
    public class CSTimerBean implements CSTimer {


        public CSTimerBean() {
            // TODO Auto-generated constructor stub
        }


        @Override
        public boolean init() {
    //Some log statements
    }
}

接口(interface)和bean都位于Switch.jar内的jboss as 7模块(JBOSS_HOME/modules/com.xxx.switch.main)中。

现在我的问题是,我试图从 war (SwitchMain.war)中调用它,但出现以下异常 -

12:50:41,593 ERROR [stderr] (MSC service thread 1-4) javax.naming.NameNotFoundException: ejb:/UFSwitch/CSTimerBean!com.uniteller.switchcore.cs.iface.CSTimer -- service jboss.naming.

请帮我解决这个问题。

提前致谢。

最佳答案

您可以尝试通过添加来定义自己的界面吗 bean 类中的 @LocalBinding(jndiBinding = “CSTimerBean “)。 请参阅此链接来验证您如何调用该接口(interface),这可能是您调用http://docs.jboss.org/ejb3/docs/tutorial/1.0.7/html/JNDI_Bindings.html的方式存在问题。

关于java - 将 JBOSS 中的 war 中的模块中存在的 ejb3 调用为 7.1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16209223/

相关文章:

jakarta-ee - 如何使用 WAS7 创建 EJB 3 应用程序

java - 错误注入(inject) : org. jboss.as.plugin.deployment.Deploy

java - 可以缓存对 javax.persistence.EntityManager 的引用吗?

javax.ejb.EJBException : nested exception is: java. rmi.UnmarshalException:找不到方法: 'helloWorld(Ljava.lang.Long;Ljava.util.List;)'

java - 如何使用构造函数中实例化的 super (变量)?

java - 使用 Spring、JPA 和 Hibernate 访问在 Jboss 中配置的多个数据库/数据源

java - 如何更改网络服务 url 端点?

java - 具有多重比较的更简洁的 if 语句

java - 持久化和序列化有什么区别?

java - Android - RecyclerView 数据未显示