[ 
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]>
----------------------------------------------------------------

Reply via email to