myfaces-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michael Freedman <michael.freed...@oracle.com>
Subject Re: TRinidad + Portlet-Bridge ViewExpired in Internet Explorer
Date Tue, 02 Nov 2010 22:41:56 GMT
Any chance you can send me a .war file of this?  If the actual app is 
much bigger its best if its narrowed just to these views but the whole 
app is fine as well.  I can then try and recreate/debug given the 
dependent version you listed in a prior e-mail.

Also I notice you reference the spring EL resolver in the 
faces-config.xml.  Is this a dependency you forgot to list in your prior 
e-mail and if so what version of spring do you depend on/use?
     -Mike-

On 10/29/2010 12:36 AM, Yves Deschamps wrote:
> Thank you Michael,
>
> This is my "home" page and the faces.config... before i change them ...
>
> <%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
> <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
> <%@ taglib uri="http://myfaces.apache.org/trinidad" prefix="tr"%>
> <f:view>
> <tr:document>
> <tr:form id="switch" rendered="#{not agentUtil.mobile}">
> <tr:commandButton text="desktop" action="desktopWelcome" immediate="true"
>                 id="desktopWelcome" inlineStyle="display:none" />
> </tr:form>
> <tr:form id="m_switch" rendered="#{agentUtil.mobile}">
> <tr:commandButton text="mobile" action="mobileWelcome" immediate="true"
>                 id="mobileWelcome" inlineStyle="display:none" />
> </tr:form>
> <f:facet name="meta">
> <script type="text/javascript">
>                 var f = document.forms[0];
>                 f.elements[0].click();
> </script>
> </f:facet>
> </tr:document>
> </f:view>
>
> <?xml version="1.0" encoding="UTF-8"?>
>
> <faces-config xmlns="http://java.sun.com/xml/ns/javaee"
>     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
> http://java.sun.com/xml/ns/javaee/web-facesconfig_1_2.xsd"
>     version="1.2">
> <application>
> <default-render-kit-id>org.apache.myfaces.trinidad.core</default-render-kit-id>

>
> <locale-config>
> <default-locale>fr</default-locale>
> <supported-locale>fr</supported-locale>
> <supported-locale>en</supported-locale>
> </locale-config>
> <resource-bundle>
> <base-name>properties.i18n.bundles.Messages</base-name>
> <var>msgs</var>
> </resource-bundle>
> <el-resolver>org.springframework.web.jsf.el.SpringBeanFacesELResolver</el-resolver>

>
> </application>
>
> <!-- desktop navigation -->
> <navigation-rule>
> <!--<from-view-id>/stylesheets/home.jsp</from-view-id>-->
> <navigation-case>
> <from-outcome>desktopWelcome</from-outcome>
> <to-view-id>/stylesheets/desktop/welcome.jsp</to-view-id>
> </navigation-case>
> </navigation-rule>
> <navigation-rule>
> <from-view-id>/stylesheets/desktop/*</from-view-id>
> <navigation-case>
> <from-outcome>welcome</from-outcome>
> <to-view-id>/stylesheets/desktop/welcome.jsp</to-view-id>
> </navigation-case>
> </navigation-rule>
> <navigation-rule>
> <from-view-id>/stylesheets/desktop/*</from-view-id>
> <navigation-case>
> <from-outcome>preferences</from-outcome>
> <to-view-id>/stylesheets/desktop/preferences.jsp</to-view-id>
> </navigation-case>
> </navigation-rule>
> <navigation-rule>
> <from-view-id>/stylesheets/desktop/*</from-view-id>
> <navigation-case>
> <from-outcome>about</from-outcome>
> <to-view-id>/stylesheets/desktop/about.jsp</to-view-id>
> </navigation-case>
> </navigation-rule>
> <navigation-rule>
> <from-view-id>/stylesheets/desktop/*</from-view-id>
> <navigation-case>
> <from-outcome>help</from-outcome>
> <to-view-id>/stylesheets/desktop/help.jsp</to-view-id>
> </navigation-case>
> </navigation-rule>
>
> <!-- desktop pdf navigation -->
> <navigation-rule>
> <from-view-id>/stylesheets/desktop/*</from-view-id>
> <navigation-case>
> <from-outcome>helppdf</from-outcome>
> <to-view-id>/stylesheets/print/help.pdf.jsf</to-view-id>
> <redirect/>
> </navigation-case>
> </navigation-rule>
>
> <!-- mobile navigation -->
> <navigation-rule>
> <!-- <from-view-id>/stylesheets/home.jsp</from-view-id>-->
> <navigation-case>
> <from-outcome>mobileWelcome</from-outcome>
> <to-view-id>/stylesheets/mobile/welcome.jsp</to-view-id>
> </navigation-case>
> </navigation-rule>
> <navigation-rule>
> <from-view-id>/stylesheets/mobile/*</from-view-id>
> <navigation-case>
> <from-outcome>welcome</from-outcome>
> <to-view-id>/stylesheets/mobile/welcome.jsp</to-view-id>
> </navigation-case>
> </navigation-rule>
> <navigation-rule>
> <from-view-id>/stylesheets/mobile/*</from-view-id>
> <navigation-case>
> <from-outcome>preferences</from-outcome>
> <to-view-id>/stylesheets/mobile/preferences.jsp</to-view-id>
> </navigation-case>
> </navigation-rule>
> <navigation-rule>
> <from-view-id>/stylesheets/mobile/*</from-view-id>
> <navigation-case>
> <from-outcome>about</from-outcome>
> <to-view-id>/stylesheets/mobile/about.jsp</to-view-id>
> </navigation-case>
> </navigation-rule>
> <navigation-rule>
> <from-view-id>/stylesheets/mobile/*</from-view-id>
> <navigation-case>
> <from-outcome>help</from-outcome>
> <to-view-id>/stylesheets/mobile/help.jsp</to-view-id>
> </navigation-case>
> </navigation-rule>
>
> </faces-config>
>
>
> Le 28/10/2010 17:18, Michael Freedman a écrit :
>> Any chance you can put together a simple/stripped down form of this 
>> use case and send to me?  Yes, the <redirect /> works around the 
>> problem because it gets the bridge to think it should render the view 
>> in create mode (no existing state to restore) but its not clear that 
>> the the original way you coded it is incorrect. Hence I would like to 
>> take a look at the details of this (if possible) and see if its 
>> something that is a bug/needs to be fixed.
>>     -Mike-
>>
>> On 10/28/2010 2:00 AM, Yves Deschamps wrote:
>>> Thank you all,
>>>
>>> The problem is now resolved.
>>> In fact I use the first page " home.jsf " which activates an action 
>>> (a javascript which presses on a button) and thus passes in " / 
>>> stylesheets / desktop / welcome.jsf " if I am in "desktop" mode or " 
>>> / stylesheets / mobile / welcome.jsf " if I am in "mobile" mode.
>>> The fact of indicating " < redirect / > " in "navigation-rules" 
>>> resolved my problem.
>>>
>>> I hope not to have made you lose too much time.
>>>
>>> Le 27/10/2010 22:48, Michael Freedman a écrit :
>>>> Can you give us some additional details?
>>>>
>>>>   1. Can you confirm that /stylesheets/desktop/welcome.jsf is a valid
>>>>      viewId/view you have provided in the app?  I.e. its not a
>>>>      resource/stylesheet referenced in the markup of a view?
>>>>   2. Describe the various steps you take before this problem occurs 
>>>> ...
>>>>      something like:
>>>>          * Hit portal page:  portlet renders view /xxxx.jsf
>>>>          * Invoke action in portlet results in rendering view 
>>>> /xxxx.jsf
>>>>          * At this point I (do something?/do nothing?) in then shortly
>>>>            the (page?/portlet?) auto rerenders and generates the error
>>>>            message.
>>>>   3. Does this problem only occur in uPortal?  I.e. since uPortal 
>>>> seems
>>>>      to use the pluto portlet container can you reproduce on Apache 
>>>> Pluto?
>>>>   4. Have you enabled trace logging in Faces?  If not can you?  Can 
>>>> you
>>>>      send me the logged results?
>>>>   5. Can you reproduce in a simplified test case that you can submit
>>>>      with a JIRA bug?
>>>>
>>>> -Mike-
>>>>
>>>> On 10/26/2010 12:16 AM, Yves Deschamps wrote:
>>>>> I am using
>>>>>
>>>>> IE 8.0
>>>>> Faces 1.2.9
>>>>> Portlet-Bridge 1.0.0
>>>>> Trinidad 1.2.13
>>>>> uPortal 3.1.2
>>>>>
>>>>> Thanks
>>>>>
>>>>> Le 25/10/2010 23:00, Scott O'Bryan a écrit :
>>>>>> Which version of IE, Faces, Bridge, and Trinidad are you using?
>>>>>>
>>>>>> On 10/25/2010 10:17 AM, Yves Deschamps wrote:
>>>>>>> Hi All,
>>>>>>>
>>>>>>> I have this issue in IE, not in Firefox ? The portlet it's Ok

>>>>>>> but a few seconds later, it's down without action !
>>>>>>>
>>>>>>> javax.faces.application.ViewExpiredException: 
>>>>>>> /stylesheets/desktop/welcome.jsfNo saved view state could be

>>>>>>> found for the view identifier: /stylesheets/desktop/welcome.jsf
>>>>>>>     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 
>>>>>>> org.apache.myfaces.portlet.faces.bridge.BridgeImpl.doFacesRender(BridgeImpl.java:636)

>>>>>>>
>>>>>>>     at 
>>>>>>> org.apache.myfaces.portlet.faces.bridge.BridgeImpl.doFacesRequest(BridgeImpl.java:545)

>>>>>>>
>>>>>>>     at 
>>>>>>> javax.portlet.faces.GenericFacesPortlet.doBridgeDispatch(GenericFacesPortlet.java:506)

>>>>>>>
>>>>>>>     at 
>>>>>>> javax.portlet.faces.GenericFacesPortlet.doRenderDispatchInternal(GenericFacesPortlet.java:461)

>>>>>>>
>>>>>>>     at 
>>>>>>> javax.portlet.faces.GenericFacesPortlet.doView(GenericFacesPortlet.java:231)

>>>>>>>
>>>>>>>     at 
>>>>>>> javax.portlet.GenericPortlet.doDispatch(GenericPortlet.java:247)
>>>>>>>     at 
>>>>>>> javax.portlet.faces.GenericFacesPortlet.doDispatch(GenericFacesPortlet.java:202)

>>>>>>>
>>>>>>>     at javax.portlet.GenericPortlet.render(GenericPortlet.java:175)
>>>>>>>     at 
>>>>>>> org.apache.pluto.core.PortletServlet.dispatch(PortletServlet.java:208)

>>>>>>>
>>>>>>>     at 
>>>>>>> org.apache.pluto.core.PortletServlet.doGet(PortletServlet.java:139)
>>>>>>>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
>>>>>>>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>>>>>>>     at 
>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)

>>>>>>>
>>>>>>>     at 
>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

>>>>>>>
>>>>>>>     at 
>>>>>>> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)

>>>>>>>
>>>>>>>     at 
>>>>>>> org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:551)

>>>>>>>
>>>>>>>     at 
>>>>>>> org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:488)

>>>>>>>
>>>>>>>     at 
>>>>>>> org.apache.pluto.core.DefaultPortletInvokerService.invoke(DefaultPortletInvokerService.java:167)

>>>>>>>
>>>>>>>     at 
>>>>>>> org.apache.pluto.core.DefaultPortletInvokerService.render(DefaultPortletInvokerService.java:101)

>>>>>>>
>>>>>>>     at 
>>>>>>> org.apache.pluto.core.PortletContainerImpl.doRender(PortletContainerImpl.java:172)

>>>>>>>
>>>>>>>     at 
>>>>>>> org.jasig.portal.channels.portlet.SpringPortletChannelImpl.render(SpringPortletChannelImpl.java:553)

>>>>>>>
>>>>>>>     at 
>>>>>>> org.jasig.portal.channels.portlet.CSpringPortletAdaptor.renderCharacters(CSpringPortletAdaptor.java:197)

>>>>>>>
>>>>>>>     at 
>>>>>>> org.jasig.portal.ChannelRenderer$Worker.execute(ChannelRenderer.java:607)
>>>>>>>     at 
>>>>>>> org.jasig.portal.utils.threading.BaseTask.run(BaseTask.java:27)
>>>>>>>     at sun.reflect.GeneratedMethodAccessor212.invoke(Unknown

>>>>>>> Source)
>>>>>>>     at 
>>>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

>>>>>>>
>>>>>>>     at java.lang.reflect.Method.invoke(Method.java:616)
>>>>>>>     at 
>>>>>>> org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)

>>>>>>>
>>>>>>>     at 
>>>>>>> org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)

>>>>>>>
>>>>>>>     at 
>>>>>>> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)

>>>>>>>
>>>>>>>     at 
>>>>>>> org.springframework.orm.jpa.JpaInterceptor.invoke(JpaInterceptor.java:96)
>>>>>>>     at 
>>>>>>> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)

>>>>>>>
>>>>>>>     at 
>>>>>>> org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)

>>>>>>>
>>>>>>>     at org.jasig.portal.$Proxy60.run(Unknown Source)
>>>>>>>     at 
>>>>>>> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)

>>>>>>>
>>>>>>>     at 
>>>>>>> java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
>>>>>>>     at java.util.concurrent.FutureTask.run(FutureTask.java:166)
>>>>>>>     at 
>>>>>>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)

>>>>>>>
>>>>>>>     at 
>>>>>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)

>>>>>>>
>>>>>>>     at java.lang.Thread.run(Thread.java:636)
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>

Mime
View raw message