2012-02-21 6 views

답변

3

당신은 ServletContextListener에서이 작업을 수행 할 수 있습니다

public void contextInitialized(ServletContextEvent e) { 
    e.getServletContext().setAttribute("historyBean", new HistoryBean()); 
} 

@WebListener와 함께 리스너를 등록 또는 web.xml에 <listener>..</listener>와 함께.

+0

감사 Bozho을 .... I 그거 했어. 이제 서블릿의 ServletContext에서 가져 와서 HistoryBean 내의 메서드를 사용할 수있게하는 방법을 알아 내려고 노력 중입니다 ... – mona

+0

'ctx.getAttribute ("historyBean")' – Bozho

3

JSF를 사용하면서 애플리케이션 범위 Bean으로 등록하십시오.

@ManagedBean(eager=true) 
@ApplicationScoped 
public class HistoryBean { 
    // ... 
} 

그것의이 방법을합니다 (eager=true주의, 이것은 일부보기 또는 콩에서 참조 할 필요없이 웹 애플리케이션의 시작에 콩을 autoconstructs, 당신은 이것에 대한 ServletContextListener 필요하지 않습니다) 단지 #{historyBean} 같은 일반적인 방법으로 JSF 컨텍스트에서 사용할 수 있지만, 다음과 같이 키 등의 관리 빈 이름을 가진 서블릿 컨텍스트 속성으로도 사용할 수 서블릿에 아니에요 :

HistoryBean historyBean = (HistoryBean) getServletContext().getAttribute("historyBean"); 
+0

감사합니다. BalusC. 하지만 JPA 주석은 사용할 수 없습니다 ..... – mona

+0

JPA 주석이 아닙니다. 그것은 JSF 어노테이션입니다. – BalusC

관련 문제