我正在尝试从企业应用程序中的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,就像你在最后一节课中看到的那样。它就像它不存在。我想我做错了什么,但我似乎无法找到解决方案