2012-10-30 10 views
1

공유 백킹 빈과 함께 두 개의 JSF2 페이지가 있습니다. 어떻게 페이지가 현재 사용중인 페이지인지를 알 수 있도록 (@PostConstruct를 사용하는 페이지로드 메소드에서) 백킹 빈에 매개 변수를 전달할 수 있습니다.JSF2가 페이지로드시 백업 빈에 속성을 전달합니다.

preRenderView (예 : this)과 같은 <f:event>을 사용할 수 있지만 그 다음은 메소드 및 백킹 빈의 필드가 필요하다는 것을 알고 있습니다. 이것은 backing bean에 특별한 방법을 쓰지 않고 f : attribute 나 f : param과 같은 것으로 가능합니까?

+0

눈 꺼풀을 실로 꿰매다 사용하여 매개 변수를 전달이 링크 @PostConstruct http://stackoverflow.com/questions/4673844/how-can-i-send-a-parameter-to-be-used-in-the-postconstruct - 뒷받침 방법 –

답변

1

빈이 요청 범위 인 경우 관리 ID로 #{view.viewId}으로보기 ID를 가져옵니다.

@ManagedProperty("#{view.viewId}") 
private String viewId; // +setter 

빈이 뷰 범위 인 경우 바로보기 ID를 UIViewRoot#viewId()으로 직접 가져옵니다.

private String viewId; 

@PostConstruct 
public void init() { 
    viewId = FacesContext.getCurrentInstance().getViewRoot().getViewId(); 
    // ... 
}