내 프로젝트에 HistoryBean이라는 Java 클래스를 ServletContext에 추가해야합니다. 내 프로젝트 안에있는 다른 서블릿에서 HistoryBean 클래스의 새 인스턴스를 만들고 싶지 않습니다. 나는 그것을 ServletContext로부터 얻고 싶다. 제안을 도와주세요.웹 응용 프로그램의 응용 프로그램 범위에 클래스를 추가하는 방법
0
A
답변
3
당신은 ServletContextListener
에서이 작업을 수행 할 수 있습니다
public void contextInitialized(ServletContextEvent e) {
e.getServletContext().setAttribute("historyBean", new HistoryBean());
}
는 @WebListener
와 함께 리스너를 등록 또는 web.xml에 <listener>..</listener>
와 함께.
3
JSF를 사용하면서 애플리케이션 범위 Bean으로 등록하십시오.
@ManagedBean(eager=true)
@ApplicationScoped
public class HistoryBean {
// ...
}
그것의이 방법을합니다 (eager=true
주의, 이것은 일부보기 또는 콩에서 참조 할 필요없이 웹 애플리케이션의 시작에 콩을 autoconstructs, 당신은 이것에 대한 ServletContextListener
필요하지 않습니다) 단지 #{historyBean}
같은 일반적인 방법으로 JSF 컨텍스트에서 사용할 수 있지만, 다음과 같이 키 등의 관리 빈 이름을 가진 서블릿 컨텍스트 속성으로도 사용할 수 서블릿에 아니에요 :
HistoryBean historyBean = (HistoryBean) getServletContext().getAttribute("historyBean");
관련 문제
- 1. 웹 응용 프로그램, 사용자가 내 응용 프로그램의
- 2. 웹 응용 프로그램의 내부 응용 프로그램 인증
- 3. 웹 응용 프로그램 클래스를 실버 라이트 응용 프로그램에 액세스하는 방법
- 4. Rake 작업에서 Sinatra 응용 프로그램 범위에 액세스
- 5. 웹 응용 프로그램 및 모바일 응용 프로그램
- 6. 웹 응용 프로그램의 OpenCV
- 7. 웹 응용 프로그램의 인증
- 8. .net Windows 응용 프로그램의 '프로그램 추가/제거'항목을 추가하는 방법
- 9. Symbian 기본 응용 프로그램의 응용 프로그램 유형
- 10. 웹 응용 프로그램의 applicationSettings
- 11. DDD 응용 프로그램의 응용 프로그램 특정 데이터
- 12. 웹 응용 프로그램 프로젝트의 app_code 클래스를 참조하십시오.
- 13. 안드로이드 응용 프로그램의 하단에 광고를 추가하는 방법?
- 14. C# 응용 프로그램의 렌더링 PDF 응용 프로그램
- 15. 웹 응용 프로그램의 단일 스프링 응용 프로그램 컨텍스트 사용
- 16. MVC 4 웹 응용 프로그램의 광범위한 응용 프로그램 로깅
- 17. 웹 응용 프로그램 : 응용 프로그램의 버전 추적을 데이터베이스에 유지 하시겠습니까?
- 18. 웹 응용 프로그램 대 데스크톱 응용 프로그램의 미래
- 19. 웹 응용 프로그램의 동적 업데이트
- 20. 웹 응용 프로그램 테스트
- 21. jsp 응용 프로그램 범위에 객체를 저장하는 단점
- 22. 웹 응용 프로그램의 동기화
- 23. 웹 응용 프로그램의 BeginGetResponse
- 24. 웹 응용 프로그램의 타이머
- 25. 웹 응용 프로그램의 주석
- 26. 웹 응용 프로그램의 NServiceBus
- 27. 웹 응용 프로그램의 ossi
- 28. 웹 응용 프로그램의 이미지
- 29. 웹 응용 프로그램의 단축키
- 30. 웹 응용 프로그램의 오류 -
감사 Bozho을 .... I 그거 했어. 이제 서블릿의 ServletContext에서 가져 와서 HistoryBean 내의 메서드를 사용할 수있게하는 방법을 알아 내려고 노력 중입니다 ... – mona
'ctx.getAttribute ("historyBean")' – Bozho