我有一個JSF 2.1(MyFaces)應用程序運行時使用多個會話Bean(所有的Bean都是會話Bean)。 超時是在web.xml定義爲這樣:JSF 2會話Bean問題
<session-config>
<session-timeout>3600</session-timeout>
</session-config>
其轉換爲1小時。
的問題是,在正常使用我得到的No Saved View...
例外:
SEVERE: An exception occurred
javax.faces.application.ViewExpiredException: /mainPanel.jsfNo saved view state could be found for the view identifier: /mainPanel.jsf
at org.apache.myfaces.lifecycle.RestoreViewExecutor.execute(RestoreViewExecutor.java:128)
將豆,目前,在faces-config.xml中定義爲與Eclipse的IDE兼容。
我不確定可能是什麼原因造成的,它絕對不是超時。 任何想法可能是什麼問題?
如果有任何進一步的信息我可以提供,讓我知道..
謝謝!
P.S - 沒有jsf-2.1
標籤
更新1我只是想出60意味着一分鐘! :-)這可能是問題所在。我會關閉的問題,如果事實證明這種方式
更新2那是不是......一些可能會有所幫助的更多信息:
- 雖然錯誤是專門爲
/mainPanel.jsf
,這實際上是xhtml的組合使用<ui:include>
- 它只在單擊應用程序中的一個特定點時發生。運行作爲點擊的結果的代碼是:
Jquery
代碼:
$(document).ready(function() {
$("#someTable tr:not(:first)").click(function(event) {
var someValue = $(this).find("input:hidden").val();
$('#currently_selected').val(someValue);
$('#currently_selected').change();
});
});
JSF 2
代碼:
<h:form prependId="false" class="hide">
<h:inputText value="#{someBean.someBeanValue}">
<f:ajax event="change" listener="#{someBean.someBeanValueChanged}" render=":anotherForm"
onevent="ifCompleteSetWindowHash" />
</h:inputText>
</h:form>
Thanks @ Lu4242,我將一些'h:inputHidden'組件改爲'h:inputText class =「hide」',問題似乎消失了。這有意義嗎? – Ben