Uploaded image for project: 'PUBLIC - Liferay Portal Community Edition'
  1. PUBLIC - Liferay Portal Community Edition
  2. LPS-43149

Exception throw when Add Display Template with Data List Variables

    Details

    • Type: Regression Bug
    • Status: Closed
    • Resolution: Won't Fix
    • Affects Version/s: 6.2.X EE, 7.0.0 M3
    • Fix Version/s: 7.0.0 M3
    • Labels:
    • Environment:
      Tomcat 7.0.42 + MySQL 5.5.21. Portal master GIT ID: 4b3123380630e1bfc59b2508481cb3ef544657b2.
      Tomcat 7.0.42 + MySQL 5.5.21. Portal ee-6.2.x EE GIT ID: 860d1d5b7211d0702943c62e0df59fc9ff0d82b6.
    • Story Points:
      3
    • Fix Priority:
      4

      Description

      Steps for reproduce:

      1. Add Dynamic Data List Display portlet.
      2. Add List with Data Definition "To Do."
      3. Back to portlet and Add Display Template.
      4. Add any field under Data List Record Fields and save.

      Actual result:
      An error occurred while processing the template.

      05:15:12,857 ERROR [RuntimePageImpl-3][runtime:96] Template processing error: "Expression cur_record is undefined on line 1, column 3 in 10157#10197#10465."
      
      Expression cur_record is undefined on line 1, column 3 in 10157#10197#10465.
      The problematic instruction:
      ----------
      ==> ${cur_record.getFieldValue("assignedTo", locale)} [on line 1, column 1 in 10157#10197#10465]
      ----------
      
      Java backtrace for programmers:
      ----------
      freemarker.core.InvalidReferenceException: Expression cur_record is undefined on line 1, column 3 in 10157#10197#10465.
              at freemarker.core.TemplateObject.assertNonNull(TemplateObject.java:125)
              at freemarker.core.TemplateObject.invalidTypeException(TemplateObject.java:135)
              at freemarker.core.Dot._getAsTemplateModel(Dot.java:78)
              at freemarker.core.Expression.getAsTemplateModel(Expression.java:89)
              at freemarker.core.MethodCall._getAsTemplateModel(MethodCall.java:86)
              at freemarker.core.Expression.getAsTemplateModel(Expression.java:89)
              at freemarker.core.Expression.getStringValue(Expression.java:93)
              at freemarker.core.DollarVariable.accept(DollarVariable.java:76)
              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 com.liferay.portal.freemarker.FreeMarkerTemplate.processTemplate(FreeMarkerTemplate.java:122)
              at com.liferay.portal.template.AbstractTemplate.processTemplate(AbstractTemplate.java:127)
              at com.liferay.portal.template.RestrictedTemplate.processTemplate(RestrictedTemplate.java:55)
              at com.liferay.portal.templateparser.Transformer.mergeTemplate(Transformer.java:637)
              at com.liferay.portal.templateparser.Transformer.transform(Transformer.java:168)
              at com.liferay.portlet.dynamicdatalists.util.DDLImpl.getTemplateContent(DDLImpl.java:322)
              at com.liferay.portlet.dynamicdatalists.util.DDLUtil.getTemplateContent(DDLUtil.java:88)
              at org.apache.jsp.html.portlet.dynamic_005fdata_005flists.view_005ftemplate_005frecords_jsp._jspService(view_005ftemplate_005frecords_jsp.java:803)
              at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
              at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
              at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
              at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
              at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
              at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
              at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
              at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
              at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
              at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:96)
              at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
              at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
              at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:749)
              at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:605)
              at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:544)
              at com.liferay.portal.servlet.DirectServletPathRegisterDispatcher.include(DirectServletPathRegisterDispatcher.java:55)
              at com.liferay.portal.servlet.ClassLoaderRequestDispatcherWrapper.doDispatch(ClassLoaderRequestDispatcherWrapper.java:78)
              at com.liferay.portal.servlet.ClassLoaderRequestDispatcherWrapper.include(ClassLoaderRequestDispatcherWrapper.java:53)
              at com.liferay.taglib.util.IncludeTag.include(IncludeTag.java:295)
              at com.liferay.taglib.util.IncludeTag.doInclude(IncludeTag.java:192)
              at com.liferay.taglib.util.IncludeTag.doEndTag(IncludeTag.java:83)
              at org.apache.jsp.html.portlet.dynamic_005fdata_005flists.view_005frecord_005fset_jsp._jspx_meth_liferay_002dutil_005finclude_005f0(view_005frecord_005fset_jsp.java:736)
              at org.apache.jsp.html.portlet.dynamic_005fdata_005flists.view_005frecord_005fset_jsp._jspService(view_005frecord_005fset_jsp.java:625)
              at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
              at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
              at com.liferay.portal.servlet.DirectRequestDispatcher.include(DirectRequestDispatcher.java:57)
              at com.liferay.portal.servlet.ClassLoaderRequestDispatcherWrapper.doDispatch(ClassLoaderRequestDispatcherWrapper.java:78)
              at com.liferay.portal.servlet.ClassLoaderRequestDispatcherWrapper.include(ClassLoaderRequestDispatcherWrapper.java:53)
              at com.liferay.taglib.util.IncludeTag.include(IncludeTag.java:295)
              at com.liferay.taglib.util.IncludeTag.doInclude(IncludeTag.java:192)
              at com.liferay.taglib.util.IncludeTag.doEndTag(IncludeTag.java:83)
              at org.apache.jsp.html.portlet.dynamic_005fdata_005flist_005fdisplay.view_jsp._jspService(view_jsp.java:737)
              at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
              at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
              at com.liferay.portal.servlet.DirectRequestDispatcher.include(DirectRequestDispatcher.java:57)
              at com.liferay.portal.servlet.ClassLoaderRequestDispatcherWrapper.doDispatch(ClassLoaderRequestDispatcherWrapper.java:78)
              at com.liferay.portal.servlet.ClassLoaderRequestDispatcherWrapper.include(ClassLoaderRequestDispatcherWrapper.java:53)
              at com.liferay.taglib.util.IncludeTag.include(IncludeTag.java:295)
              at com.liferay.taglib.util.IncludeTag.doInclude(IncludeTag.java:192)
              at com.liferay.taglib.util.IncludeTag.doEndTag(IncludeTag.java:83)
              at org.apache.jsp.html.common.themes.portlet_jsp._jspService(portlet_jsp.java:3807)
              at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
              at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
              at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
              at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
              at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
              at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
              at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
              at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
              at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:116)
              at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:96)
              at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
              at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
              at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:749)
              at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:605)
              at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:544)
              at com.liferay.portlet.PortletRequestDispatcherImpl.dispatch(PortletRequestDispatcherImpl.java:331)
              at com.liferay.portlet.PortletRequestDispatcherImpl.include(PortletRequestDispatcherImpl.java:128)
              at com.liferay.portal.struts.PortletRequestProcessor.doInclude(PortletRequestProcessor.java:370)
              at com.liferay.portal.struts.PortletRequestProcessor.doForward(PortletRequestProcessor.java:338)
              at org.apache.struts.tiles.TilesRequestProcessor.processTilesDefinition(TilesRequestProcessor.java:239)
              at org.apache.struts.tiles.TilesRequestProcessor.internalModuleRelativeForward(TilesRequestProcessor.java:341)
              at org.apache.struts.action.RequestProcessor.processForward(RequestProcessor.java:572)
              at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:221)
              at com.liferay.portal.struts.PortletRequestProcessor.process(PortletRequestProcessor.java:234)
              at com.liferay.portlet.StrutsPortlet.include(StrutsPortlet.java:296)
              at com.liferay.portlet.StrutsPortlet.doView(StrutsPortlet.java:157)
              at com.liferay.portal.kernel.portlet.LiferayPortlet.doDispatch(LiferayPortlet.java:213)
              at javax.portlet.GenericPortlet.render(GenericPortlet.java:233)
              at com.liferay.portlet.FilterChainImpl.doFilter(FilterChainImpl.java:103)
              at com.liferay.portlet.ScriptDataPortletFilter.doFilter(ScriptDataPortletFilter.java:55)
              at com.liferay.portlet.FilterChainImpl.doFilter(FilterChainImpl.java:100)
              at com.liferay.portal.kernel.portlet.PortletFilterUtil.doFilter(PortletFilterUtil.java:64)
              at com.liferay.portlet.InvokerPortletImpl.invoke(InvokerPortletImpl.java:618)
              at com.liferay.portlet.InvokerPortletImpl.invokeRender(InvokerPortletImpl.java:677)
              at com.liferay.portlet.InvokerPortletImpl.render(InvokerPortletImpl.java:379)
              at org.apache.jsp.html.portal.render_005fportlet_jsp._jspService(render_005fportlet_jsp.java:1230)
              at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
              at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
              at com.liferay.portal.servlet.DirectRequestDispatcher.include(DirectRequestDispatcher.java:57)
              at com.liferay.portal.servlet.ClassLoaderRequestDispatcherWrapper.doDispatch(ClassLoaderRequestDispatcherWrapper.java:78)
              at com.liferay.portal.servlet.ClassLoaderRequestDispatcherWrapper.include(ClassLoaderRequestDispatcherWrapper.java:53)
              at com.liferay.portlet.PortletContainerImpl._doRender(PortletContainerImpl.java:655)
              at com.liferay.portlet.PortletContainerImpl.render(PortletContainerImpl.java:138)
              at com.liferay.portlet.SecurityPortletContainerWrapper.render(SecurityPortletContainerWrapper.java:141)
              at com.liferay.portlet.RestrictPortletContainerWrapper.render(RestrictPortletContainerWrapper.java:126)
              at com.liferay.portal.kernel.portlet.PortletContainerUtil.render(PortletContainerUtil.java:156)
              at com.liferay.portal.layoutconfiguration.util.PortletRenderer._render(PortletRenderer.java:120)
              at com.liferay.portal.layoutconfiguration.util.PortletRenderer.access$4(PortletRenderer.java:107)
              at com.liferay.portal.layoutconfiguration.util.PortletRenderer$PortletRendererCallable.doCall(PortletRenderer.java:174)
              at com.liferay.portal.layoutconfiguration.util.PortletRenderer$PortletRendererCallable.doCall(PortletRenderer.java:1)
              at com.liferay.portal.kernel.executor.CopyThreadLocalCallable.call(CopyThreadLocalCallable.java:69)
              at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
              at java.util.concurrent.FutureTask.run(FutureTask.java:166)
              at com.liferay.portal.kernel.concurrent.ThreadPoolExecutor$WorkerTask._runTask(ThreadPoolExecutor.java:682)
              at com.liferay.portal.kernel.concurrent.ThreadPoolExecutor$WorkerTask.run(ThreadPoolExecutor.java:593)
              at java.lang.Thread.run(Thread.java:724)
      

      Expected result:
      Add Display Template successfully without and exception.

        Attachments

          Activity

            People

            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:
                Days since last comment:
                5 years, 32 weeks, 2 days ago

                Packages

                Version Package
                7.0.0 M3