[
https://issues.jboss.org/browse/GTNPORTAL-1780?page=com.atlassian.jira.pl...
]
Julien Viet commented on GTNPORTAL-1780:
----------------------------------------
I have modified the unit test to check that behavior and it actually does not happen, here
is in short what the unit test does (among other things): it involves two portlet UTP1 and
UTP2
step 1 : UTP1 renders markup and set validity for 2 seconds, UTP2 ask the test controller
to show the next page as a resource
step 2 : UTP2 is displayed as a resource and does not involve UTP1, it performs a 1 second
pause and ask the controller to show a render page that will involve both portlets
step 3 : UTP2 renders and UTP1 should not be rendered (UTP1 set a cached boolean to false
to assert it later), UTP2 ask the test controller to display again a resource
step 4 : UTP2 resource rendering occurs it performs a one second pause and ask the
controller to render the full page
step 5 : UTP1 is rendered and performs some checks and the test continue with revalidation
(that I will not explain here)...
so if the fact to display the use the cached markup of UTP1 at step 3 would extend the
cache validity of one more second, the UTP1 would not be rendered at step 5 (1 + 2 = 3
> 2) and the test would fail.
can you check that test on your side and tell me if it correspond to the behavior your are
describing?
Support Cached Portlet as spec 2.0
----------------------------------
Key: GTNPORTAL-1780
URL:
https://issues.jboss.org/browse/GTNPORTAL-1780
Project: GateIn Portal
Issue Type: Bug
Security Level: Public(Everyone can see)
Reporter: Khoi Nguyen
Assignee: Minh Hoang TO
Labels: portal-s47
Attachments: cached_portlet_sample.war
Original Estimate: 1 day
Remaining Estimate: 1 day
Currently, GateIn haven't supported the Cached portlet that introduced in PLT.22, we
get an exception when refresh a portal page that contains expired portlet.
{code}
SEVERE: Portlet render threw an exception
org.exoplatform.services.portletcontainer.PortletContainerException: Unknown invocation
response type [class org.gatein.pc.api.invocation.response.RevalidateMarkupResponse].
Expected a FragmentResponse or an ErrorResponse
at
org.exoplatform.portal.webui.application.UIPortletLifecycle.processRender(UIPortletLifecycle.java:288)
at
org.exoplatform.portal.webui.application.UIPortletLifecycle.processRender(UIPortletLifecycle.java:62)
at org.exoplatform.webui.core.UIComponent.processRender(UIComponent.java:144)
at org.exoplatform.webui.core.UIContainer.renderChildren(UIContainer.java:368)
at org.exoplatform.webui.core.UIContainer.renderChildren(UIContainer.java:358)
at sun.reflect.GeneratedMethodAccessor137.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at
org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite$PojoCachedMethodSiteNoUnwrapNoCoerce.invoke(PojoMetaMethodSite.java:229)
at
org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.call(PojoMetaMethodSite.java:52)
at
org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:121)
at UIPage.run(UIPage.gtmpl:8)
at org.exoplatform.groovyscript.GroovyScript.render(GroovyScript.java:111)
at org.exoplatform.groovyscript.GroovyTemplate.render(GroovyTemplate.java:119)
at org.exoplatform.groovyscript.text.TemplateService.merge(TemplateService.java:117)
at org.exoplatform.webui.core.lifecycle.Lifecycle.renderTemplate(Lifecycle.java:128)
at org.exoplatform.webui.core.lifecycle.Lifecycle.processRender(Lifecycle.java:85)
at
org.exoplatform.portal.webui.page.UIPageLifecycle.processRender(UIPageLifecycle.java:44)
at org.exoplatform.webui.core.UIComponent.processRender(UIComponent.java:144)
at
org.exoplatform.webui.core.UIComponentDecorator.renderChildren(UIComponentDecorator.java:101)
at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at
org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite$PojoCachedMethodSiteNoUnwrapNoCoerce.invoke(PojoMetaMethodSite.java:229)
at
org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.call(PojoMetaMethodSite.java:52)
at
org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:121)
at UIPageBody.run(UIPageBody.gtmpl:35)
at org.exoplatform.groovyscript.GroovyScript.render(GroovyScript.java:111)
at org.exoplatform.groovyscript.GroovyTemplate.render(GroovyTemplate.java:119)
at org.exoplatform.groovyscript.text.TemplateService.merge(TemplateService.java:117)
at org.exoplatform.webui.core.lifecycle.Lifecycle.renderTemplate(Lifecycle.java:128)
at org.exoplatform.webui.core.lifecycle.Lifecycle.processRender(Lifecycle.java:85)
at org.exoplatform.webui.core.UIComponent.processRender(UIComponent.java:144)
at org.exoplatform.portal.webui.page.UIPageBody.processRender(UIPageBody.java:171)
at org.exoplatform.webui.core.UIContainer.renderChildren(UIContainer.java:368)
at org.exoplatform.webui.core.UIContainer.renderChildren(UIContainer.java:358)
at sun.reflect.GeneratedMethodAccessor137.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at
org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite$PojoCachedMethodSiteNoUnwrapNoCoerce.invoke(PojoMetaMethodSite.java:229)
at
org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.call(PojoMetaMethodSite.java:52)
at
org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:121)
at UIPortal.run(UIPortal.gtmpl:18)
at org.exoplatform.groovyscript.GroovyScript.render(GroovyScript.java:111)
at org.exoplatform.groovyscript.GroovyTemplate.render(GroovyTemplate.java:119)
at org.exoplatform.groovyscript.text.TemplateService.merge(TemplateService.java:117)
at org.exoplatform.webui.core.lifecycle.Lifecycle.renderTemplate(Lifecycle.java:128)
at org.exoplatform.webui.core.lifecycle.Lifecycle.processRender(Lifecycle.java:85)
at
org.exoplatform.portal.webui.portal.UIPortalLifecycle.processRender(UIPortalLifecycle.java:41)
at
org.exoplatform.portal.webui.portal.UIPortalLifecycle.processRender(UIPortalLifecycle.java:30)
at org.exoplatform.webui.core.UIComponent.processRender(UIComponent.java:144)
at
org.exoplatform.webui.core.UIComponentDecorator.renderChildren(UIComponentDecorator.java:101)
at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at
org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite$PojoCachedMethodSiteNoUnwrapNoCoerce.invoke(PojoMetaMethodSite.java:229)
at
org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.call(PojoMetaMethodSite.java:52)
at
org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:121)
at UISiteBody.run(UISiteBody.gtmpl:31)
at org.exoplatform.groovyscript.GroovyScript.render(GroovyScript.java:111)
at org.exoplatform.groovyscript.GroovyTemplate.render(GroovyTemplate.java:119)
at org.exoplatform.groovyscript.text.TemplateService.merge(TemplateService.java:117)
at org.exoplatform.webui.core.lifecycle.Lifecycle.renderTemplate(Lifecycle.java:128)
at org.exoplatform.webui.core.lifecycle.Lifecycle.processRender(Lifecycle.java:85)
at org.exoplatform.webui.core.UIComponent.processRender(UIComponent.java:144)
at org.exoplatform.webui.core.UIContainer.renderChildren(UIContainer.java:368)
at org.exoplatform.webui.core.UIContainer.renderChildren(UIContainer.java:358)
at sun.reflect.GeneratedMethodAccessor137.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at
org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite$PojoCachedMethodSiteNoUnwrapNoCoerce.invoke(PojoMetaMethodSite.java:229)
at
org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.call(PojoMetaMethodSite.java:52)
at
org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:121)
at UIContainer.run(UIContainer.gtmpl:49)
at org.exoplatform.groovyscript.GroovyScript.render(GroovyScript.java:111)
at org.exoplatform.groovyscript.GroovyTemplate.render(GroovyTemplate.java:119)
at org.exoplatform.groovyscript.text.TemplateService.merge(TemplateService.java:117)
at org.exoplatform.webui.core.lifecycle.Lifecycle.renderTemplate(Lifecycle.java:128)
at org.exoplatform.webui.core.lifecycle.Lifecycle.processRender(Lifecycle.java:85)
at org.exoplatform.webui.core.UIComponent.processRender(UIComponent.java:144)
at
org.exoplatform.webui.core.UIComponentDecorator$UIComponentDecoratorLifecycle.processRender(UIComponentDecorator.java:113)
at
org.exoplatform.webui.core.UIComponentDecorator$UIComponentDecoratorLifecycle.processRender(UIComponentDecorator.java:104)
at org.exoplatform.webui.core.UIComponent.processRender(UIComponent.java:144)
at org.exoplatform.webui.core.UIContainer.renderChildren(UIContainer.java:368)
at org.exoplatform.webui.core.UIContainer.renderChildren(UIContainer.java:358)
at sun.reflect.GeneratedMethodAccessor137.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at
org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite$PojoCachedMethodSiteNoUnwrapNoCoerce.invoke(PojoMetaMethodSite.java:229)
at
org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.call(PojoMetaMethodSite.java:52)
at
org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:121)
at UIWorkingWorkspace.run(UIWorkingWorkspace.gtmpl:12)
at org.exoplatform.groovyscript.GroovyScript.render(GroovyScript.java:111)
at org.exoplatform.groovyscript.GroovyTemplate.render(GroovyTemplate.java:119)
at org.exoplatform.groovyscript.text.TemplateService.merge(TemplateService.java:117)
at org.exoplatform.webui.core.lifecycle.Lifecycle.renderTemplate(Lifecycle.java:128)
at org.exoplatform.webui.core.lifecycle.Lifecycle.processRender(Lifecycle.java:85)
at org.exoplatform.webui.core.UIComponent.processRender(UIComponent.java:144)
at org.exoplatform.webui.core.UIContainer.renderChildren(UIContainer.java:368)
at org.exoplatform.webui.core.UIContainer.renderChildren(UIContainer.java:358)
at org.exoplatform.webui.core.UIApplication.renderChildren(UIApplication.java:109)
at sun.reflect.GeneratedMethodAccessor269.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at
org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite$PojoCachedMethodSiteNoUnwrapNoCoerce.invoke(PojoMetaMethodSite.java:229)
at
org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.call(PojoMetaMethodSite.java:52)
at
org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:121)
at UIPortalApplicationChildren.run(UIPortalApplicationChildren.gtmpl:25)
at org.exoplatform.groovyscript.GroovyScript.render(GroovyScript.java:111)
at org.exoplatform.groovyscript.GroovyTemplate.render(GroovyTemplate.java:119)
at org.exoplatform.groovyscript.text.TemplateService.merge(TemplateService.java:117)
at org.exoplatform.webui.core.lifecycle.Lifecycle.renderTemplate(Lifecycle.java:128)
at
org.exoplatform.portal.webui.workspace.UIPortalApplicationLifecycle.processRender(UIPortalApplicationLifecycle.java:138)
at
org.exoplatform.portal.webui.workspace.UIPortalApplicationLifecycle.processRender(UIPortalApplicationLifecycle.java:100)
at
org.exoplatform.portal.webui.workspace.UIPortalApplicationLifecycle.processRender(UIPortalApplicationLifecycle.java:37)
at org.exoplatform.webui.core.UIComponent.processRender(UIComponent.java:144)
at
org.exoplatform.portal.webui.workspace.UIPortalApplication.processRender(UIPortalApplication.java:537)
at
org.exoplatform.portal.application.PortalRequestHandler.execute(PortalRequestHandler.java:117)
at org.exoplatform.web.WebAppController.service(WebAppController.java:165)
at
org.exoplatform.portal.application.PortalController.onService(PortalController.java:127)
at
org.exoplatform.container.web.AbstractHttpServlet.service(AbstractHttpServlet.java:132)
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.exoplatform.web.filter.ExtensibleFilter$ExtensibleFilterChain.doFilter(ExtensibleFilter.java:110)
at org.exoplatform.web.filter.ExtensibleFilter.doFilter(ExtensibleFilter.java:80)
at org.exoplatform.web.filter.GenericFilter.doFilter(GenericFilter.java:79)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.exoplatform.web.CacheUserProfileFilter.doFilter(CacheUserProfileFilter.java:72)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.exoplatform.frameworks.jcr.web.ThreadLocalSessionProviderInitializedFilter.doFilter(ThreadLocalSessionProviderInitializedFilter.java:116)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.exoplatform.services.security.web.SetCurrentIdentityFilter.doFilter(SetCurrentIdentityFilter.java:90)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.exoplatform.web.login.ClusteredSSOFilter.doFilter(ClusteredSSOFilter.java:73)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.exoplatform.container.web.PortalContainerFilter.doFilter(PortalContainerFilter.java:69)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:563)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:662)
{code}
--
This message is automatically generated by JIRA.
For more information on JIRA, see:
http://www.atlassian.com/software/jira