포털 애플리케이션의 PortletRequest
에서 특정 정보를 가져와야합니다. 포틀릿 애플리케이션 내에서 유틸리티 메소드를 사용하여이를 수행합니다. 이 유틸리티 메소드에서는 FacesContext.getCurrentInstance().getRequest()
에 액세스하여 PortletRequest를 가져옵니다. DAO 레이어에서이 유틸리티 메서드에 액세스합니다. 요청 매개 변수에 대한 액세스 권한이 없습니다. 때때로 작동하지만 때로는 나에게 NullPointerException
을줍니다. 나는 이것에 대해 설명하는 유사한 thread을 발견했다. 그들은 동일한 요청의 일부인 경우 언급 했었습니다. 그런 다음 컨텍스트를 가져와야합니다. 나에게 그것은 같은 요청의 일부이지만 컨텍스트를 얻지는 못한다. 저를 도와주세요.포털 애플리케이션에서 FacesContext에 액세스
1
A
답변
0
FacesContext.getCurrentInstance()에서 null FaceContext를 얻는 경우이 스레드/요청에 대해 FacesContext가 생성되지 않았습니다.
실패한 요청이 비 얼굴 입력 점을 통과합니까? 이벤트 또는 자원 포틀릿 요청과 같은 그 경우는, FacesContext는 작성되지 않습니다.
정적 메서드와 스레드 로컬 저장소를 사용하여 DAO의 데이터에 액세스하는 대신 PortletRequest에서 필요한 것을 추출하여 스택으로 전달하는 것이 좋습니다. FaceContext 또는 PortletRequest 같은 프리젠 테이션 레이어 인공물을 DAO 레이어와 혼합하는 것은 나쁜 습관입니다.
0
응용 프로그램이 별도의 WAR/JAR 파일에 배포 된 경우 다른 클래스 로더가 사용되는 것일 수 있습니다. JBossS5에서 최대 절전 모드 HAR 아카이브 내부에서 FacesContext에 액세스하려고했을 때 비슷한 문제가 발생했습니다. 리플렉션 API를 사용하여 성공적인 솔루션을 찾았습니다. this을 살펴보십시오.
전체 응용 프로그램을 하나의 EAR로 묶으면 전체 귀에 대해 하나의 클래스 로더를 사용하도록 할 수 있지만 응용 프로그램 서버마다 AFAIK를 사용할 수는 있습니다.
감사합니다.
관련 문제
- 1. 스레드에서 FacesContext에 액세스
- 2. 웹 서비스에서 FacesContext에 액세스
- 3. 여러 포틀릿에서 Util jar의 FacesContext에 액세스
- 4. 캡 티브 포털 보안?
- 5. JSFSession이 생성되기 전에 FacesContext에 액세스하는 JSFUnit
- 6. TFS 팀 프로젝트 포털 권한
- 7. Sharepoint 인트라넷 포털
- 8. 포털 웹 페이지와 비 포털 웹 페이지의 차이점은 무엇입니까?
- 9. JBoss 튜토리얼, 포털
- 10. 제이보스 포털 배포
- 11. asp.net 포털 사용
- 12. 포털 생성을위한 .NET 솔루션
- 13. php와 joomla로 포털 만들기
- 14. TFS 공개 버그 포털
- 15. Git 팀 포털
- 16. 포털 스타일 및 테마
- 17. 소스 코드 저장소 포털
- 18. weblogic 포털 시작하기 11g
- 19. Java 기반 포털
- 20. iOS 프로비저닝 포털 링크
- 21. WSS의 포털 사이트
- 22. asp.net의 생명주기 포털
- 23. Liferay 포털 오류
- 24. 관리되는 파일 포털
- 25. J2ME의 포털 클라이언트
- 26. 오라클 웹 로직 포털
- 27. 디자인 문제 : 애플리케이션에서 공유, 동기화, 데이터 액세스 ... 최상의 접근 방식?
- 28. 내 애플리케이션에서 액세스 할 수있는 변수를 미들웨어에 설정하는 방법은 무엇입니까?
- 29. 하위 포털 로그 아웃 문제
- 30. 뉴스 포털 및 데이터베이스 고중량