사용자가 페이지를 떠날 때 세션 변수를 지우고 싶습니다. h : selectOneMenu에서 선택한 값을 기반으로 데이터 테이블을 표시하는 양식이 있습니다. 이 폼에는 세션 변수를 지우는 데 사용되는 destroy 메소드를 호출하는 취소 버튼이 있습니다. 모두 정상적으로 작동합니다.사용자가 페이지를 떠날 때 세션 변수 지우기
문제 설명 : onunload 이벤트에서 호출되는 javascript 함수를 호출하고 있습니다. 이 함수는 숨겨진 버튼 'destroyBtn'을 클릭합니다. 버튼은 destroy() 메서드를 호출합니다. destroy 메서드가 호출되고 값이 지워지지만 양식이나 뒤로 단추 외부의 링크를 클릭하면 페이지 탐색이 으로 중지됩니다. @Component와 @Scope ("session")을 사용하고 있습니다.
function destroy(){
alert("Inside Destroy");
document.getElementById('MainForm:destroyBtn').click();
}
<h:commandButton id="destroyBtn" styleClass="none" value="Destroy" ajax="false"
actionListener="#{TutorialsBean.destroy}" />
public void destroy(){
this.searchTxt="";
this.accessType.clear();
this.roleCart.clear();
this.manager = null;
this.helpList.clear();
this.setComment("");
}
어떤 도움을 주시면 감사하겠습니다. JSF와 스프링을 사용하여 세션을 처리 할 수있는 다른 방법이 있습니까?
버튼이'destroy()'메소드를 호출하지 않는 것 같습니다. 'handleDestroy()'메서드는 무엇입니까? 타이핑 실수입니까? – prageeth
그건 입력 실수입니다 ... –