In the beforePhase method of your restore_view phase listener, you
should check if it is right after a new login. If yes, redirect to the
home page. This should suppress the ViewExpiredException.
regards
Bill
On Fri, Jul 25, 2008 at 3:16 PM, bansi <[EMAIL PROTECTED]> wrote:
>
> Thats perfect. But how do i prevent it from generating ViewExpiredException
> or in other words how do i handle ViewExpiredException as i still see it in
> the Log file
> I tried the following snippet in web.xml but it doesnt work
> <error-page>
>
> <exception-type>javax.faces.application.ViewExpiredException</exception-type>
> <location>/user/timeout.jsp</location>
> </error-page>
> Is it due to RichFaces version 3.1 or Myfaces 1.2.2 or Tomcat 5.5
>
>
> Zigc Junk wrote:
>>
>> That message never get rendered because redirect will create a new
>> instance of FacesContext.
>>
>> Bill
>>
>> On Fri, Jul 25, 2008 at 12:43 PM, bansi <[EMAIL PROTECTED]> wrote:
>>>
>>> Finally i am able to avoid ugly stack trace rendered on Browser due to
>>> ugly
>>> ViewExpiredException by putting following snippet of code in afterPhase()
>>> method of LoginPahseListener
>>> if (pe.getFacesContext().getViewRoot() == null)
>>> {
>>> //This message never get rendered onto Browser. Not sure Why?
>>> FacesContext.getCurrentInstance().addMessage(null,
>>> new FacesMessage(FacesMessage.SEVERITY_INFO, "Session
>>> Timeout", "Redirecting to Login Page"));
>>> logger.warn("ViewRoot is null");
>>> ExternalContext ec = facesContext.getExternalContext();
>>> HttpServletRequest request = (HttpServletRequest)
>>> facesContext.getExternalContext().getRequest();
>>> HOME_PAGE = request.getContextPath();
>>> logger.debug("Session timed out and userInfo");
>>> // session already timed out and destroyed. redirect to home
>>> page.
>>> try
>>> {
>>> String homePage = HOME_PAGE + "/login.faces";
>>> logger.debug(" redirect to home page=" + homePage);
>>> ec.redirect(homePage);
>>> } catch (Exception e)
>>> {
>>> // this should never happen
>>> e.printStackTrace();
>>> }
>>> I still have the problem of Exception shown in log file. Is it good idea
>>> to
>>> restore the view and continue the session
>>>
>>>
>>> Zigc Junk wrote:
>>>>
>>>> I use Glassfish. What is your container?
>>>>
>>>> On Thu, Jul 24, 2008 at 1:34 PM, bansi <[EMAIL PROTECTED]> wrote:
>>>>>
>>>>> Hi Bill,
>>>>> I just copy/pasted your code into my PhaseListener in the beforePhase()
>>>>> method with the only difference in redirecting to JSF page i.e.
>>>>> login.faces
>>>>> instead of JSP/HTML page.
>>>>> I also have couple of logging statements to examine the value of
>>>>> facesContext and session. Amazingly session value is Not Null even
>>>>> after
>>>>> session timeout. For testing purpose i have following snippet in
>>>>> web.xml
>>>>> to
>>>>> simulate session timeout
>>>>> <session-config>
>>>>> <session-timeout>5</session-timeout>
>>>>> </session-config>
>>>>>
>>>>> Here is the stack trace which still throws ViewExpiredException on
>>>>> session
>>>>> timeout but doesnt do redirect
>>>>>
>>>>> INFO: BEFORE RESTORE_VIEW(1)
>>>>> 2008-07-24 11:17:27,314 DEBUG
>>>>> [com.boeing.nmt.nams.view.util.LoginPhaseListener] - <In Before Phase>
>>>>> 2008-07-24 11:17:27,314 DEBUG
>>>>> [com.boeing.nmt.nams.view.util.LoginPhaseListener] - <FacesContext
>>>>> [EMAIL PROTECTED]>2008-07-24
>>>>> 11:17:27,314 DEBUG [com.boeing.nmt.nams.view.util.LoginPhaseListener] -
>>>>> <[EMAIL PROTECTED]>
>>>>> Jul 24, 2008 11:17:27 AM org.exadel.jsf.PhaseTracker beforePhase
>>>>> INFO: BEFORE RESTORE_VIEW(1)
>>>>> 2008-07-24 11:17:27,314 WARN
>>>>> [com.boeing.nmt.nams.view.util.LoginPhaseListener] - <ViewRoot is null>
>>>>> 2008-07-24 11:17:27,314 WARN
>>>>> [com.boeing.nmt.nams.view.util.LoginPhaseListener] - <ViewRoot is null>
>>>>> Jul 24, 2008 11:17:27 AM org.exadel.jsf.PhaseTracker afterPhase
>>>>> INFO: AFTER RESTORE_VIEW(1)
>>>>> 2008-07-24 11:17:27,424 ERROR [javax.faces.webapp._ErrorPageWriter] -
>>>>> <An
>>>>> exception occurred>
>>>>> javax.faces.application.ViewExpiredException:
>>>>> /addressRegistryForm.facesThe
>>>>> expected view was not returned for the view identifier:
>>>>> /addressRegistryForm.faces
>>>>> at
>>>>> org.apache.myfaces.lifecycle.RestoreViewExecutor.execute(RestoreViewExecutor.java:88)
>>>>> at
>>>>> org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:103)
>>>>>
>>>>>
>>>>> Zigc Junk wrote:
>>>>>>
>>>>>> Since this thread is discussing the timeout, I just throw in what my
>>>>>> soloution is. If it is irrelevant, just ignore it.
>>>>>>
>>>>>> I got a PhaseListener to listen to restore view phase. Here is the
>>>>>> code snipet that deals with session timeout.
>>>>>>
>>>>>> public void beforePhase(PhaseEvent pe) {
>>>>>> FacesContext fc = pe.getFacesContext();
>>>>>> ExternalContext ec = fc.getExternalContext();
>>>>>> HttpSession session = (HttpSession)ec.getSession(false);
>>>>>> if(session == null) {
>>>>>> // session already timed out and destroyed. redirect to home
>>>>>> page.
>>>>>> // this will cause a login.
>>>>>> try {
>>>>>> String homePage = "/"+HOME_PAGE+".jsf";
>>>>>> ec.redirect(homePage);
>>>>>> } catch(Exception e) {
>>>>>> // this should never happen
>>>>>> e.printStackTrace();
>>>>>> }
>>>>>> }
>>>>>> ................
>>>>>> }
>>>>>>
>>>>>> regards
>>>>>>
>>>>>> Bill
>>>>>>
>>>>>>
>>>>>> On Wed, Jul 23, 2008 at 10:20 AM, bansi <[EMAIL PROTECTED]> wrote:
>>>>>>>
>>>>>>> Hasan
>>>>>>> Thanks for writing wonderful article. Infact i already implemented
>>>>>>> your
>>>>>>> article but it doesnt get pass thru ViewExpiredException. Here is the
>>>>>>> sequence of events happening when session times out
>>>>>>> From the log i see
>>>>>>> 1) The Listener displays session destroyed
>>>>>>> 2) The session timeout Filter doesnt fire for some reason and doesnt
>>>>>>> do
>>>>>>> redirect . I have the following mapping in web.xml
>>>>>>> <filter-name>SessionTimeoutFilter</filter-name>
>>>>>>>
>>>>>>> <filter-class>com.boeing.nmt.nams.view.util.SessionTimeoutFilter</filter-class>
>>>>>>> </filter>
>>>>>>>
>>>>>>> <filter-mapping>
>>>>>>> <filter-name>SessionTimeoutFilter</filter-name>
>>>>>>> <url-pattern>*.faces</url-pattern>
>>>>>>> </filter-mapping>
>>>>>>> 3) It goes back to LoginPhaseListener from where it throws
>>>>>>> ViewExpiredException on session Timeout
>>>>>>>
>>>>>>> Hasan Turksoy wrote:
>>>>>>>>
>>>>>>>> this
>>>>>>>> entry<http://www.jroller.com/hasant/entry/jsf_logout_and_redirect_user>may
>>>>>>>> help you to build a session timeout handling infrastructure... also,
>>>>>>>> you
>>>>>>>> can handle ajax requests by this session expired controller
>>>>>>>> filter...
>>>>>>>>
>>>>>>>> Regards,
>>>>>>>>
>>>>>>>> Hasan...
>>>>>>>> www.jroller.com/hasant
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> On Mon, Jul 21, 2008 at 11:58 PM, bansi <[EMAIL PROTECTED]>
>>>>>>>> wrote:
>>>>>>>>
>>>>>>>>>
>>>>>>>>> Thanks for your suggestion. I am planning to write a filter but
>>>>>>>>> before
>>>>>>>>> that
>>>>>>>>> i
>>>>>>>>> have to get rid of ViewExpired Excpetion. Any pointers/suggestions
>>>>>>>>> to
>>>>>>>>> resolve the error will be greatly appreciated
>>>>>>>>> Here is the stack trace
>>>>>>>>> 2008-07-21 13:15:35,988 ERROR [javax.faces.webapp._ErrorPageWriter]
>>>>>>>>> -
>>>>>>>>> <An
>>>>>>>>> exception occurred>
>>>>>>>>> javax.faces.application.ViewExpiredException:
>>>>>>>>> /addressRegistryForm.facesThe
>>>>>>>>> expected view was not returned for the view identifier:
>>>>>>>>> /addressRegistryForm.faces
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>> org.apache.myfaces.lifecycle.RestoreViewExecutor.execute(RestoreViewExecutor.java:88)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>> org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:103)
>>>>>>>>> at
>>>>>>>>> org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:76)
>>>>>>>>> at
>>>>>>>>> javax.faces.webapp.FacesServlet.service(FacesServlet.java:148)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>> org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:147)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>>>>>>>>> at
>>>>>>>>> org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:147)
>>>>>>>>> at
>>>>>>>>> org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:256)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>> org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:362)
>>>>>>>>> at
>>>>>>>>> org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:488)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>> org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>> com.boeing.nmt.nams.view.util.SecurityFilter.doFilter(SecurityFilter.java:59)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>>>>>>>>> at
>>>>>>>>> com.boeing.nmt.nams.view.util.MessageFilter.doFilter(MessageFilter.java:71)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
>>>>>>>>> at
>>>>>>>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
>>>>>>>>> at
>>>>>>>>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>> org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
>>>>>>>>> at
>>>>>>>>>
>>>>>>>>> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
>>>>>>>>> at java.lang.Thread.run(Thread.java:595)
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> bansi wrote:
>>>>>>>>> >
>>>>>>>>> > I am using Myfaces 1.2.2 ( JSF 1.2) and PhaseListener approach as
>>>>>>>>> > suggested by Cagatay Civici in one of his articles i.e.
>>>>>>>>> >
>>>>>>>>> http://cagataycivici.wordpress.com/2005/12/30/jsf_with_ajax_phase_listener/
>>>>>>>>> >
>>>>>>>>> > If the session times out, JSF throws a ViewExpiredException
>>>>>>>>> during
>>>>>>>>> the
>>>>>>>>> > RESTORE_VIEW phase.
>>>>>>>>> >
>>>>>>>>> >
>>>>>>>>> > Here is the snippet from my LoginPhaseListener. The exception is
>>>>>>>>> thrown
>>>>>>>>> > from afterPhase method
>>>>>>>>> >
>>>>>>>>> > /**
>>>>>>>>> > * After phase.
>>>>>>>>> > *
>>>>>>>>> > * @param pe
>>>>>>>>> > * the pe
>>>>>>>>> > * @see
>>>>>>>>> >
>>>>>>>>> javax.faces.event.PhaseListener#afterPhase(javax.faces.event.PhaseEvent)
>>>>>>>>> > */
>>>>>>>>> > public void afterPhase(final PhaseEvent pe)
>>>>>>>>> > {
>>>>>>>>> > final FacesContext facesContext = pe.getFacesContext();
>>>>>>>>> > final String viewId =
>>>>>>>>> > pe.getFacesContext().getViewRoot().getViewId();// Throws
>>>>>>>>> Exception
>>>>>>>>> > if (viewId.endsWith("login.xhtml"))
>>>>>>>>> > {
>>>>>>>>> > final String managedBeanName =
>>>>>>>>> > getManagedBeanNameFromView(viewId);
>>>>>>>>> > final Object object =
>>>>>>>>> > facesContext.getApplication().createValueBinding("#{" +
>>>>>>>>> managedBeanName
>>>>>>>>> +
>>>>>>>>> > "}")
>>>>>>>>> > .getValue(facesContext);
>>>>>>>>> > if (object == null)
>>>>>>>>> > {
>>>>>>>>> > logger.error("OnPageLoad cannot be executed, no
>>>>>>>>> such
>>>>>>>>> > managed bean:" + managedBeanName);
>>>>>>>>> > } else
>>>>>>>>> > {
>>>>>>>>> > final Login loginBean = (Login) object;
>>>>>>>>> > loginBean.onPageLoad();
>>>>>>>>> > }
>>>>>>>>> > } else
>>>>>>>>> > {
>>>>>>>>> > final String managedBeanName =
>>>>>>>>> > getManagedBeanNameFromView(viewId);
>>>>>>>>> > final String BackingBeanName =
>>>>>>>>> managedBeanName.substring(0,
>>>>>>>>> > 1).toUpperCase()
>>>>>>>>> > + managedBeanName.substring(1,
>>>>>>>>> > managedBeanName.length());
>>>>>>>>> > }
>>>>>>>>> > }
>>>>>>>>> >
>>>>>>>>> >
>>>>>>>>> > /**
>>>>>>>>> > * Gets the managed bean name from view.
>>>>>>>>> > *
>>>>>>>>> > * @param viewId
>>>>>>>>> > * the view id
>>>>>>>>> > * @return the managed bean name from view
>>>>>>>>> > */
>>>>>>>>> > public String getManagedBeanNameFromView(final String viewId)
>>>>>>>>> > {
>>>>>>>>> > String pageName;
>>>>>>>>> > if (viewId.endsWith("login.xhtml"))
>>>>>>>>> > {
>>>>>>>>> > pageName = viewId.substring(1, viewId.length() - 6);
>>>>>>>>> > } else
>>>>>>>>> > {
>>>>>>>>> > pageName = viewId.substring(1, viewId.length() - 10);
>>>>>>>>> > }
>>>>>>>>> > return pageName + "Bean";
>>>>>>>>> > }
>>>>>>>>> >
>>>>>>>>> > Here is the stack trace
>>>>>>>>> >
>>>>>>>>> > 2008-07-15 10:31:12,192 ERROR
>>>>>>>>> > [org.apache.myfaces.lifecycle.PhaseListenerManager] - <Exception
>>>>>>>>> in
>>>>>>>>> > PhaseListener RESTORE_VIEW(1) afterPhase>
>>>>>>>>> > java.lang.NullPointerException
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> com.boeing.nmt.nams.view.util.LoginPhaseListener.afterPhase(LoginPhaseListener.java:47)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.myfaces.lifecycle.PhaseListenerManager.informPhaseListenersAfter(PhaseListenerManager.java:92)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:107)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:76)
>>>>>>>>> > at
>>>>>>>>> javax.faces.webapp.FacesServlet.service(FacesServlet.java:148)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:147)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>>>>>>>>> > at
>>>>>>>>> org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:147)
>>>>>>>>> > at
>>>>>>>>> org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:256)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:362)
>>>>>>>>> > at
>>>>>>>>> org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:488)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> com.boeing.nmt.nams.view.util.SecurityFilter.doFilter(SecurityFilter.java:59)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> com.boeing.nmt.nams.view.util.MessageFilter.doFilter(MessageFilter.java:71)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
>>>>>>>>> > at java.lang.Thread.run(Thread.java:595)
>>>>>>>>> > 2008-07-15 10:31:12,348 ERROR
>>>>>>>>> [javax.faces.webapp._ErrorPageWriter]
>>>>>>>>> -
>>>>>>>>> <An
>>>>>>>>> > exception occurred>
>>>>>>>>> > javax.faces.application.ViewExpiredException:
>>>>>>>>> /deviceForm.facesThe
>>>>>>>>> > expected view was not returned for the view identifier:
>>>>>>>>> /deviceForm.faces
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.myfaces.lifecycle.RestoreViewExecutor.execute(RestoreViewExecutor.java:88)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:103)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:76)
>>>>>>>>> > at
>>>>>>>>> javax.faces.webapp.FacesServlet.service(FacesServlet.java:148)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:147)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>>>>>>>>> > at
>>>>>>>>> org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:147)
>>>>>>>>> > at
>>>>>>>>> org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:256)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:362)
>>>>>>>>> > at
>>>>>>>>> org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:488)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> com.boeing.nmt.nams.view.util.SecurityFilter.doFilter(SecurityFilter.java:59)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> com.boeing.nmt.nams.view.util.MessageFilter.doFilter(MessageFilter.java:71)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
>>>>>>>>> > at java.lang.Thread.run(Thread.java:595)
>>>>>>>>> > 2008-07-15 10:31:12,348 ERROR
>>>>>>>>> [javax.faces.webapp._ErrorPageWriter]
>>>>>>>>> -
>>>>>>>>> <An
>>>>>>>>> > exception occurred>
>>>>>>>>> > javax.faces.application.ViewExpiredException:
>>>>>>>>> /deviceForm.facesThe
>>>>>>>>> > expected view was not returned for the view identifier:
>>>>>>>>> /deviceForm.faces
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.myfaces.lifecycle.RestoreViewExecutor.execute(RestoreViewExecutor.java:88)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:103)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:76)
>>>>>>>>> > at
>>>>>>>>> javax.faces.webapp.FacesServlet.service(FacesServlet.java:148)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:147)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>>>>>>>>> > at
>>>>>>>>> org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:147)
>>>>>>>>> > at
>>>>>>>>> org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:256)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:362)
>>>>>>>>> > at
>>>>>>>>> org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:488)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> com.boeing.nmt.nams.view.util.SecurityFilter.doFilter(SecurityFilter.java:59)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> com.boeing.nmt.nams.view.util.MessageFilter.doFilter(MessageFilter.java:71)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
>>>>>>>>> > at
>>>>>>>>> >
>>>>>>>>> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
>>>>>>>>> > at java.lang.Thread.run(Thread.java:595)
>>>>>>>>> > 2008-07-15 10:31:12,348 WARN
>>>>>>>>> > [org.apache.myfaces.renderkit.html.util.DefaultAddResource] -
>>>>>>>>> <MyFaces
>>>>>>>>> > special javascript could not be retrieved from request-map.>
>>>>>>>>> >
>>>>>>>>> >
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> View this message in context:
>>>>>>>>> http://www.nabble.com/Session-timeout-results-in-javax.faces.application.ViewExpiredException-tp18518805p18577449.html
>>>>>>>>> Sent from the MyFaces - Users mailing list archive at Nabble.com.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> View this message in context:
>>>>>>> http://www.nabble.com/Session-timeout-results-in-javax.faces.application.ViewExpiredException-tp18518805p18613250.html
>>>>>>> Sent from the MyFaces - Users mailing list archive at Nabble.com.
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>> --
>>>>> View this message in context:
>>>>> http://www.nabble.com/Session-timeout-results-in-javax.faces.application.ViewExpiredException-tp18518805p18637945.html
>>>>> Sent from the MyFaces - Users mailing list archive at Nabble.com.
>>>>>
>>>>>
>>>>
>>>>
>>>
>>> --
>>> View this message in context:
>>> http://www.nabble.com/Session-timeout-results-in-javax.faces.application.ViewExpiredException-tp18518805p18656526.html
>>> Sent from the MyFaces - Users mailing list archive at Nabble.com.
>>>
>>>
>>
>>
>
> --
> View this message in context:
> http://www.nabble.com/Session-timeout-results-in-javax.faces.application.ViewExpiredException-tp18518805p18658899.html
> Sent from the MyFaces - Users mailing list archive at Nabble.com.
>
>