从Web模块访问EJB

时间:2014-05-02 21:32:19

标签: java java-ee

我正在尝试从企业应用程序中的JSF Web模块获取EJB实例。所以我这样做了。

首先我有一个界面

import javax.ejb.Remote;

@Remote
public interface ICrawlerBean {
    public void startCrawler();
}

然后我有EJB实现这个接口:

@Stateless( name="CrawlerB")
@LocalBean
public class CrawlerBean implements ICrawlerBean{

    @Override
    public void startCrawler() {
        CrawlerController cc = new CrawlerController();
        try {
            cc.run();
        } catch (Exception ex) {
            Logger.getLogger(CrawlerBean.class.getName()).log(Level.SEVERE, null, ex);
        }
    }
}

这两个都在EJB方面。接下来我有Web模块的Managed Bean

@ManagedBean
@SessionScoped
public class HomeContoller extends HttpServlet{

    private String title = "Home";

    @EJB
    private CrawlerB cb; //Error is here; cannot find symbol

    public HomeController() {
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public void crawl(){

    }
}

我不得不说我在各种教程中找到了所有这些,而且我对企业应用程序没有经验,所以任何帮助都会很棒。 所以,我无法进入我的EJB,就像你在最后一节课中看到的那样。它就像它不存在。我想我做错了什么,但我似乎无法找到解决方案

0 个答案:

没有答案