2010-06-28 7 views
0

richfaces를 사용하는 JSP 페이지에서 작업하고 있습니다. 현재 페이지에는 여러 개의 feild와 추가 및 재설정 버튼이 있습니다.JSP 페이지 리셋 관련 문제

리셋 버튼이 정상적으로 작동하여 페이지의 해당 입력란을 null로 설정하고 다른 여러 가지 값을 재설정하는 내 backingbean의 메소드를 호출합니다. 문제는 내 추가 버튼입니다.

추가 단추는 사용자가 입력 한 값의 유효성을 검사하는 메서드를 호출합니다. 유효성 검사가 끝나면 페이지 하단의 목록에 새 항목이 추가되고 재설정 단추에서 사용되는 reset 메서드가 호출되어 페이지를 다시 설정하면 다른 항목을 입력 할 수 있습니다. 모든 경우는 하나의 경우를 제외하고는 입력 된 정보의 유효성을 검사하면서 사용자로부터 무언가를 확인하려고합니다. 확인 옵션과 취소 옵션이있는 modalpanel을 보여줍니다.

여기 내가 문제가있는 곳입니다. 내 확인 버튼은 backingbean에서 일부 값을 설정하고 add 메소드를 호출하는 메소드를 호출합니다. 나는 그것이 우아하지 않다는 것을 알고 있지만 더 나은 해결책을 찾지 못했습니다. 이제 add 메소드가 실행되면 reset 메소드가 호출되고 내 페이지에는 아무 것도 발생하지 않습니다. 재설정 버튼을 클릭하면 페이지가 재설정되고 항목이 목록에 추가됩니다.
모달 패널을 보여줄 때를 제외하고 모든 경우에 페이지가 리셋 된 이유를 알지 못합니다. 어떤 도움을 주셔서 감사합니다.

코드의 일부 조각 :

JSP 페이지 :

public String add() { 
    ... 
    if (somethinghappend) getPanel().setRendered(true); 
    ... 
    list.add(entry); 
    reset(); 
    return ""; 
} 

public String reset() { 
    // resets the feilds on the page 
    return ""; 
} 

public String proceed() { 
    //change values so something does not happen 
    add(); 
    return ""; 
} 

답변

0

:

<h:commandButton value="Add" style="font-size:10pt;font-weight:bold" action="#controller.add}" binding="#{controller.addButton}"/> 
<h:commandButton value="Reset" action="#{controller.reset}" style="font-size:10pt;font-weight:bold"/> 

모달 패널 (JSP 페이지의 일부)

<a:commandButton id="confirm" action="#{controller.proceed}" styleClass="confirmIconButton" value="Yes, proceed" />&nbsp;&nbsp; 
    <r:componentControl for="confirmUnchangedExpected" attachTo="confirm" operation="hide" event="onclick"/> 

것은 콩을 백업 그래서 나는 내 p에 대한 해결책을 발견했다. modalPanel의 나의 confrim 버튼에 rerender을 설정하여 문제를 해결하십시오. 재설정 된 값을 올바르게 표시하는 전체 페이지를 다시 렌더링하도록 설정했습니다.