2012-02-22 4 views
0

저는 ICEfaces가있는 JSF 및 Hibernate 웹 응용 프로그램을 작업 중입니다. 두 개의 Facelets 템플릿을 사용하고 있는데 하나는 로그인 페이지 용이고 나머지 하나는 사이트 용입니다.로그인 후 URL 및 템플릿 페이지를 변경하는 방법은 무엇입니까?

로그인 버튼을 클릭하면 홈 페이지로 이동하지만 URL이나 템플릿은 변경하지 않고 문제가 발생합니다. 올바른 URL을 입력하면 URL로 이동하여 올바른 템플릿을 표시합니다.

ICEfaces가 Ajax를 사용하고 부분적으로 페이지를 업데이트한다는 것을 알고 있지만이를 중지하는 방법을 알고 싶습니다. 전체 요청 된 페이지를로드하려고합니다.

답변

1

로그인 한 후 리디렉션을 보내면됩니다. 탐색 결과에 faces-redirect=true 요청 매개 변수를 추가하여이 작업을 수행 할 수 있습니다.

public String login() { 
    // ... 

    return "home?faces-redirect-true"; 
} 

아니면 여전히 faces-config.xml<navigation-case>들과 고대 JSF 1.x에서를 사용하는 경우, 당신은 문제의 <navigation-case><redirect />를 추가하여 동일 달성 할 수있다.

<naviagation-case> 
    <from-outcome>home</from-outcome> 
    <to-view-id>/home.jsf</to-view-id> 
    <redirect /> 
</navigation-case> 
+0

내가 당신이 말한 아무것도 정확하게 당신이 사용하는 어떤 JSF와 ICEfaces 버전 –

+0

을 무슨 일이 생긴없는 일을 확인? – BalusC

+0

내가하는 일은 public입니다. String validateUser() throws Exception { String page = ""; if (help.getUser (username, password) .isEmpty()) { setInvalidMessage ("잘못된 사용자 이름 또는 암호"); page = "index.xhtml"; } else { –

관련 문제