Uploaded image for project: 'Magnolia Shop (closed)'
  1. Magnolia Shop (closed)
  2. MSHOP-67

Don't wrap nodes multiple times

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Blocker Blocker
    • 1.1.1
    • 1.1.1
    • None

      Since MAGNOLIA-4867 we cannot double-wrap nodes.

      Here is stacktrace from catalina.out

      2013-03-11 08:21:56,266 ERROR ndering.engine.ModeDependentRenderExceptionHandler: Error while rendering [/demo-features/modules/sample-shop/extras/extras1/0] with template [shop:components/extras/shopExtrasProduct]: RenderException: info.magnolia.rendering.engine.RenderException: freemarker.template.TemplateModelException: get(target) failed on instance of info.magnolia.module.shop.paragraphs.ProductTeaserModel
      info.magnolia.rendering.engine.RenderException: info.magnolia.rendering.engine.RenderException: freemarker.template.TemplateModelException: get(target) failed on instance of info.magnolia.module.shop.paragraphs.ProductTeaserModel
      	at info.magnolia.module.templatingkit.renderers.STKRenderer.render(STKRenderer.java:82)
      	at info.magnolia.rendering.engine.DefaultRenderingEngine.render(DefaultRenderingEngine.java:97)
      	at info.magnolia.rendering.engine.DefaultRenderingEngine$$EnhancerByCGLIB$$44db0e0e.render(<generated>)
      	at info.magnolia.templating.elements.ComponentElement.begin(ComponentElement.java:151)
      	at info.magnolia.templating.freemarker.AbstractDirective.execute(AbstractDirective.java:93)
      	at freemarker.core.Environment.visit(Environment.java:274)
      	at freemarker.core.UnifiedCall.accept(UnifiedCall.java:126)
      	at freemarker.core.Environment.visit(Environment.java:221)
      	at freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:179)
      	at freemarker.core.Environment.visit(Environment.java:428)
      	at freemarker.core.IteratorBlock.accept(IteratorBlock.java:102)
      	at freemarker.core.Environment.visit(Environment.java:221)
      	at freemarker.core.MixedContent.accept(MixedContent.java:92)
      	at freemarker.core.Environment.visit(Environment.java:221)
      	at freemarker.core.Environment.process(Environment.java:199)
      	at freemarker.template.Template.process(Template.java:237)
      	at info.magnolia.freemarker.FreemarkerHelper.render(FreemarkerHelper.java:155)
      	at info.magnolia.rendering.renderer.FreemarkerRenderer.onRender(FreemarkerRenderer.java:85)
      	at info.magnolia.rendering.renderer.AbstractRenderer.render(AbstractRenderer.java:139)
      	at info.magnolia.module.templatingkit.renderers.STKRenderer.render(STKRenderer.java:77)
      	at info.magnolia.rendering.engine.DefaultRenderingEngine.render(DefaultRenderingEngine.java:97)
      	at info.magnolia.rendering.engine.DefaultRenderingEngine$$EnhancerByCGLIB$$44db0e0e.render(<generated>)
      	at info.magnolia.templating.elements.AreaElement.end(AreaElement.java:301)
      	at info.magnolia.templating.freemarker.AbstractDirective.execute(AbstractDirective.java:98)
      	at freemarker.core.Environment.visit(Environment.java:274)
      	at freemarker.core.UnifiedCall.accept(UnifiedCall.java:126)
      	at freemarker.core.Environment.visit(Environment.java:221)
      	at freemarker.core.IfBlock.accept(IfBlock.java:82)
      	at freemarker.core.Environment.visit(Environment.java:221)
      	at freemarker.core.MixedContent.accept(MixedContent.java:92)
      	at freemarker.core.Environment.visit(Environment.java:221)
      	at freemarker.core.Environment.process(Environment.java:199)
      	at freemarker.template.Template.process(Template.java:237)
      	at info.magnolia.freemarker.FreemarkerHelper.render(FreemarkerHelper.java:155)
      	at info.magnolia.rendering.renderer.FreemarkerRenderer.onRender(FreemarkerRenderer.java:85)
      	at info.magnolia.rendering.renderer.AbstractRenderer.render(AbstractRenderer.java:139)
      	at info.magnolia.module.templatingkit.renderers.STKRenderer.render(STKRenderer.java:77)
      	at info.magnolia.rendering.engine.DefaultRenderingEngine.render(DefaultRenderingEngine.java:97)
      	at info.magnolia.rendering.engine.DefaultRenderingEngine$$EnhancerByCGLIB$$44db0e0e.render(<generated>)
      	at info.magnolia.templating.elements.AreaElement.end(AreaElement.java:301)
      	at info.magnolia.templating.freemarker.AbstractDirective.execute(AbstractDirective.java:98)
      	at freemarker.core.Environment.visit(Environment.java:274)
      	at freemarker.core.UnifiedCall.accept(UnifiedCall.java:126)
      	at freemarker.core.Environment.visit(Environment.java:221)
      	at freemarker.core.MixedContent.accept(MixedContent.java:92)
      	at freemarker.core.Environment.visit(Environment.java:221)
      	at freemarker.core.Environment.process(Environment.java:199)
      	at freemarker.template.Template.process(Template.java:237)
      	at info.magnolia.freemarker.FreemarkerHelper.render(FreemarkerHelper.java:155)
      	at info.magnolia.rendering.renderer.FreemarkerRenderer.onRender(FreemarkerRenderer.java:85)
      	at info.magnolia.rendering.renderer.AbstractRenderer.render(AbstractRenderer.java:139)
      	at info.magnolia.module.templatingkit.renderers.STKRenderer.render(STKRenderer.java:77)
      	at info.magnolia.rendering.engine.DefaultRenderingEngine.render(DefaultRenderingEngine.java:97)
      	at info.magnolia.rendering.engine.DefaultRenderingEngine$$EnhancerByCGLIB$$44db0e0e.render(<generated>)
      	at info.magnolia.rendering.engine.RenderingFilter.render(RenderingFilter.java:173)
      	at info.magnolia.rendering.engine.RenderingFilter.doFilter(RenderingFilter.java:113)
      	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:91)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.module.softlocking.filters.SoftLockingFilter.doFilter(SoftLockingFilter.java:164)
      	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:91)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.rendering.model.ModelExecutionFilter.doFilter(ModelExecutionFilter.java:107)
      	at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:61)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.cms.filters.InterceptFilter.doFilter(InterceptFilter.java:130)
      	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:91)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.cms.filters.AggregatorFilter.doFilter(AggregatorFilter.java:105)
      	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:91)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.cms.security.BaseSecurityFilter.doFilter(BaseSecurityFilter.java:60)
      	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:91)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.cms.filters.RepositoryMappingFilter.doFilter(RepositoryMappingFilter.java:101)
      	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:91)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:67)
      	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:91)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:77)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:85)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:85)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:85)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:85)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:85)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:85)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:85)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:85)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:85)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:85)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:85)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:85)
      	at info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:67)
      	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:91)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.cms.filters.VirtualUriFilter.doFilter(VirtualUriFilter.java:70)
      	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:91)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.module.cache.executor.Bypass.processCacheRequest(Bypass.java:58)
      	at info.magnolia.module.cache.executor.CompositeExecutor.processCacheRequest(CompositeExecutor.java:66)
      	at info.magnolia.module.cache.filter.CacheFilter.doFilter(CacheFilter.java:153)
      	at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:61)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.cms.i18n.I18nContentSupportFilter.doFilter(I18nContentSupportFilter.java:76)
      	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:91)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.cms.filters.RangeSupportFilter.doFilter(RangeSupportFilter.java:84)
      	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:91)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.cms.security.BaseSecurityFilter.doFilter(BaseSecurityFilter.java:60)
      	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:91)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.module.extendedtemplatingkit.filters.CrossSiteSecurityFilter.doFilter(CrossSiteSecurityFilter.java:104)
      	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:91)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.cms.security.SecurityCallbackFilter.doFilter(SecurityCallbackFilter.java:86)
      	at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:61)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.cms.security.LogoutFilter.doFilter(LogoutFilter.java:93)
      	at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:61)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.module.templatingkit.filters.SiteMergeFilter.doFilter(SiteMergeFilter.java:99)
      	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:91)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.module.extendedtemplatingkit.filters.MultiSiteFilter.doFilter(MultiSiteFilter.java:100)
      	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:91)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.cms.filters.MultiChannelFilter.doFilter(MultiChannelFilter.java:83)
      	at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:61)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.module.cache.filter.GZipFilter.doFilter(GZipFilter.java:75)
      	at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:61)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:85)
      	at info.magnolia.cms.security.auth.login.LoginFilter.doFilter(LoginFilter.java:93)
      	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:91)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.enterprise.registration.RegistrationFilter.doFilter(RegistrationFilter.java:52)
      	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:91)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:85)
      	at info.magnolia.cms.filters.CosMultipartRequestFilter.doFilter(CosMultipartRequestFilter.java:91)
      	at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:61)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.module.devicedetection.filter.DeviceDetectionFilter.doFilter(DeviceDetectionFilter.java:73)
      	at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:61)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.cms.filters.ContentTypeFilter.doFilter(ContentTypeFilter.java:102)
      	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:91)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.cms.filters.ContextFilter.doFilter(ContextFilter.java:131)
      	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:91)
      	at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:83)
      	at info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:67)
      	at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:91)
      	at info.magnolia.cms.filters.SafeDestroyMgnlFilterWrapper.doFilter(SafeDestroyMgnlFilterWrapper.java:108)
      	at info.magnolia.cms.filters.MgnlFilterDispatcher.doDispatch(MgnlFilterDispatcher.java:67)
      	at info.magnolia.cms.filters.MgnlMainFilter.doFilter(MgnlMainFilter.java:108)
      	at info.magnolia.cms.filters.MgnlMainFilter.doFilter(MgnlMainFilter.java:94)
      	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.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:859)
      	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)
      Caused by: info.magnolia.rendering.engine.RenderException: freemarker.template.TemplateModelException: get(target) failed on instance of info.magnolia.module.shop.paragraphs.ProductTeaserModel
      	at info.magnolia.rendering.renderer.FreemarkerRenderer.onRender(FreemarkerRenderer.java:88)
      	at info.magnolia.rendering.renderer.AbstractRenderer.render(AbstractRenderer.java:139)
      	at info.magnolia.module.templatingkit.renderers.STKRenderer.render(STKRenderer.java:77)
      	... 170 more
      Caused by: freemarker.template.TemplateModelException: get(target) failed on instance of info.magnolia.module.shop.paragraphs.ProductTeaserModel
      	at freemarker.ext.beans.BeanModel.get(BeanModel.java:224)
      	at freemarker.core.Dot._getAsTemplateModel(Dot.java:76)
      	at freemarker.core.Expression.getAsTemplateModel(Expression.java:89)
      	at freemarker.core.DefaultToExpression._getAsTemplateModel(DefaultToExpression.java:100)
      	at freemarker.core.Expression.getAsTemplateModel(Expression.java:89)
      	at freemarker.core.Assignment.accept(Assignment.java:90)
      	at freemarker.core.Environment.visit(Environment.java:221)
      	at freemarker.core.MixedContent.accept(MixedContent.java:92)
      	at freemarker.core.Environment.visit(Environment.java:221)
      	at freemarker.core.Environment.process(Environment.java:199)
      	at freemarker.template.Template.process(Template.java:237)
      	at info.magnolia.freemarker.FreemarkerHelper.render(FreemarkerHelper.java:155)
      	at info.magnolia.rendering.renderer.FreemarkerRenderer.onRender(FreemarkerRenderer.java:85)
      	... 172 more
      Caused by: java.lang.reflect.InvocationTargetException
      	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:866)
      	at freemarker.ext.beans.BeanModel.invokeThroughDescriptor(BeanModel.java:277)
      	at freemarker.ext.beans.BeanModel.get(BeanModel.java:184)
      	... 184 more
      Caused by: java.lang.IllegalArgumentException: node /demo-features/modules/sample-shop/product-detail is already wrapped by info.magnolia.jcr.wrapper.I18nNodeWrapper and double wrapping is not supported.
      	at info.magnolia.jcr.wrapper.DelegateNodeWrapper.setWrappedNode(DelegateNodeWrapper.java:96)
      	at info.magnolia.jcr.wrapper.DelegateNodeWrapper.<init>(DelegateNodeWrapper.java:87)
      	at info.magnolia.jcr.decoration.ContentDecoratorNodeWrapper.<init>(ContentDecoratorNodeWrapper.java:71)
      	at info.magnolia.jcr.wrapper.I18nNodeWrapper.<init>(I18nNodeWrapper.java:56)
      	at info.magnolia.module.templatingkit.functions.STKTemplatingFunctions.wrap(STKTemplatingFunctions.java:366)
      	at info.magnolia.module.shop.paragraphs.ProductTeaserModel.getTarget(ProductTeaserModel.java:80)
      	... 191 more
      

        Acceptance criteria

              rkovarik Roman Kovařík
              jsimak Jaroslav Simak
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved:

                  Bug DoR
                  Task DoD