[
http://jira.magnolia-cms.com/browse/MAGNOLIA-3164?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Grégory Joseph closed MAGNOLIA-3164.
------------------------------------
Resolution: Duplicate
Assignee: Grégory Joseph (was: Boris Kraft)
Duplicates MAGNOLIA-2945.
Patches most welcome, as usual.
> Freemarker: content?ancestors results in exception
> --------------------------------------------------
>
> Key: MAGNOLIA-3164
> URL: http://jira.magnolia-cms.com/browse/MAGNOLIA-3164
> Project: Magnolia
> Issue Type: Bug
> Components: freemarker
> Affects Versions: 4.3.1
> Environment: Magnolia 4.3.1 deployed on RHEL/Intel. Running the CE
> tomcat-bundle with STK 1.3 installed.
> Reporter: Richard Unger
> Assignee: Grégory Joseph
>
> Trying to use the node-built-in "ancestors" in a freemarker template results
> in the following exception.
> Sample code to produce the error:
> [#list content?ancestors as parents]
> bla bla
> [/#list]
> Exception stack trace:
> FreeMarker template error!
> Can't get parent of I18nContentWrapper for website:/[rep:root]:root node
> doesn't have a parent
> The problematic instruction:
> ----------
> ==> list content?ancestors as pars [on line 5, column 1 in
> biolebensmittel/general/pfadLeiste]
> in include "/biolebensmittel/general/pfadLeiste" [on line 42, column 1 in
> biolebensmittel/Artikelkategorie]
> ----------
> Java backtrace for programmers:
> ----------
> freemarker.template.TemplateModelException: Can't get parent of
> I18nContentWrapper for website:/[rep:root]:root node doesn't have a parent
> at
> info.magnolia.freemarker.models.ContentModel.getParentNode(ContentModel.java:146)
> at
> freemarker.core.NodeBuiltins$ancestorsBI.calculateResult(NodeBuiltins.java:85)
> at
> freemarker.core.NodeBuiltins$NodeBuiltIn._getAsTemplateModel(NodeBuiltins.java:73)
> at freemarker.core.Expression.getAsTemplateModel(Expression.java:89)
> at freemarker.core.IteratorBlock.accept(IteratorBlock.java:94)
> at freemarker.core.Environment.visit(Environment.java:210)
> at freemarker.core.MixedContent.accept(MixedContent.java:92)
> at freemarker.core.Environment.visit(Environment.java:210)
> at freemarker.core.Environment.include(Environment.java:1483)
> at freemarker.core.Include.accept(Include.java:169)
> at freemarker.core.Environment.visit(Environment.java:210)
> at freemarker.core.MixedContent.accept(MixedContent.java:92)
> at freemarker.core.Environment.visit(Environment.java:210)
> at freemarker.core.Environment.process(Environment.java:190)
> at freemarker.template.Template.process(Template.java:237)
> at
> info.magnolia.freemarker.FreemarkerHelper.render(FreemarkerHelper.java:152)
> at
> info.magnolia.module.templating.renderers.FreemarkerTemplateRenderer.onRender(FreemarkerTemplateRenderer.java:74)
> at
> info.magnolia.module.templating.AbstractRenderer.render(AbstractRenderer.java:83)
> at
> info.magnolia.module.templating.renderers.AbstractTemplateRenderer.renderTemplate(AbstractTemplateRenderer.java:76)
> at
> info.magnolia.module.templating.engine.DefaultRenderingEngine$RenderingHelper$2.render(DefaultRenderingEngine.java:105)
> at
> info.magnolia.module.templating.engine.DefaultRenderingEngine.render(DefaultRenderingEngine.java:165)
> at
> info.magnolia.module.templating.engine.DefaultRenderingEngine.render(DefaultRenderingEngine.java:127)
> at
> info.magnolia.module.templating.engine.DefaultRenderingEngine$$EnhancerByCGLIB$$91f654ef.render(<generated>)
> at
> info.magnolia.module.templating.RenderingFilter.render(RenderingFilter.java:132)
> at
> info.magnolia.module.templating.RenderingFilter.doFilter(RenderingFilter.java:92)
> at
> info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.filters.BackwardCompatibilityFilter.doFilter(BackwardCompatibilityFilter.java:72)
> at
> info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:62)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.filters.InterceptFilter.doFilter(InterceptFilter.java:121)
> at
> info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.filters.AggregatorFilter.doFilter(AggregatorFilter.java:103)
> at
> info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.security.BaseSecurityFilter.doFilter(BaseSecurityFilter.java:61)
> at
> info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.filters.RepositoryMappingFilter.doFilter(RepositoryMappingFilter.java:90)
> at
> info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:64)
> at
> info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:76)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
> at
> info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:64)
> at
> info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.filters.VirtualUriFilter.doFilter(VirtualUriFilter.java:130)
> at
> info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.module.cache.executor.Bypass.processCacheRequest(Bypass.java:57)
> at
> info.magnolia.module.cache.filter.CacheFilter.doFilter(CacheFilter.java:123)
> at
> info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:62)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.i18n.I18nContentSupportFilter.doFilter(I18nContentSupportFilter.java:75)
> at
> info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.module.cache.filter.GZipFilter.doFilter(GZipFilter.java:83)
> at
> info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:62)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
> at
> info.magnolia.cms.security.BaseSecurityFilter.doFilter(BaseSecurityFilter.java:61)
> at
> info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.security.LogoutFilter.doFilter(LogoutFilter.java:89)
> at
> info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:62)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.security.auth.login.LoginFilter.doFilter(LoginFilter.java:80)
> at
> info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:84)
> at
> info.magnolia.cms.filters.CosMultipartRequestFilter.doFilter(CosMultipartRequestFilter.java:87)
> at
> info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.filters.ContentTypeFilter.doFilter(ContentTypeFilter.java:90)
> at
> info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.filters.ContextFilter.doFilter(ContextFilter.java:87)
> at
> info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
> at
> info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:82)
> at
> info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:64)
> at
> info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:70)
> at
> info.magnolia.cms.filters.MgnlMainFilter.doFilter(MgnlMainFilter.java:96)
> at
> info.magnolia.cms.filters.MgnlMainFilter.doFilter(MgnlMainFilter.java:199)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
> at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
> at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
> at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
> at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
> at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
> at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:875)
> at
> org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
> at
> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
> at
> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
> at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
> at java.lang.Thread.run(Thread.java:619)
> Caused by: javax.jcr.ItemNotFoundException: root node doesn't have a parent
> at org.apache.jackrabbit.core.NodeImpl.getParent(NodeImpl.java:2122)
> at
> info.magnolia.cms.core.DefaultContent.getParent(DefaultContent.java:368)
> at
> info.magnolia.cms.util.ContentWrapper.getParent(ContentWrapper.java:275)
> at
> info.magnolia.freemarker.models.ContentModel.getParentNode(ContentModel.java:143)
> ... 107 more
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.magnolia-cms.com/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
----------------------------------------------------------------
For list details see
http://www.magnolia-cms.com/home/community/mailing-lists.html
To unsubscribe, E-mail to: <[email protected]>
----------------------------------------------------------------