Uploaded image for project: 'Kuali Rice Development'
  1. Kuali Rice Development
  2. KULRICE-11140

AFT Failure KRAD Demo Labs KSA Transaction inline Freemarker Exception

    Details

    • Type: Bug Fix
    • Status: Closed
    • Priority: Critical
    • Resolution: Cannot Reproduce
    • Affects Version/s: 2.4
    • Fix Version/s: 2.4
    • Component/s: Development, Regression
    • Security Level: Public (Public: Anyone can view)
    • Labels:
      None
    • Rice Module:
      KRAD
    • Sprint:
      2.4.0-m3 KRAD UXI Sprint 2, 2.4.0-m3 KRAD UXI Sprint 3, 2.4.0-m3 KRAD UXI Sprint 4, 2.4.0-rc1 Sprint 1
    • KAI Review Status:
      Not Required
    • KTI Review Status:
      Not Required
    • Code Review Status:
      Not Required

      Description

      Currently masked by KULRICE-11791

      AFT Failure
      KRAD Demo Labs KSA Transaction click any green circle to see inline Freemarker Exception if you are unable to reproduce try it on a freshly started server:

      LabsKsaTransactionAft.testKsaTransactionBookmark
      Full test name: org.kuali.rice.krad.labs.LabsKsaTransactionAft.testKsaTransactionBookmark
      Test results url: http://ci.rice.kuali.org/job/rice-2.4-smoke-test-krad-labs/lastCompletedBuild/testReport/org.kuali.rice.krad.labs/LabsKsaTransactionAft/testKsaTransactionBookmark/

      
      
       FreeMarker template error: Method public org.springframework.web.servlet.support.BindStatus org.springframework.web.servlet.support.RequestContext.getBindStatus(java.lang.String) throws java.lang.IllegalStateException threw an exception when invoked on org.springframework.web.servlet.support.RequestContext object "org.springframework.web.servlet.support.RequestContext@2e0f738e" with arguments of types [java.lang.String,]. See cause exception. The failing instruction (FTL stack trace): ---------- ==> #assign status = springMacroRequestCo... [in template "krad/WEB-INF/ftl/lib/spring.ftl" in macro "bind" at line 136, column 9] #else [in template "krad/WEB-INF/ftl/lib/spring.ftl" in macro "bind" at line 135, column 5] @bind path [in template "krad/WEB-INF/ftl/lib/spring.ftl" in macro "formInput" at line 175, column 5] @spring.formInput id="\${control.id}"... [in template "krad/WEB-INF/ftl/components/control/text.ftl" in macro "uif_text" at line 52, column 5] #inline "template" [in template "krad/WEB-INF/ftl/lib/template.ftl" in macro "template" at line 19, column 9] @krad.template component=field.contro... [in template "krad/WEB-INF/ftl/components/field/dataInputField.ftl" in macro "uif_dataInputField" at line 82, column 17] #else [in template "krad/WEB-INF/ftl/components/field/dataInputField.ftl" in macro "uif_dataInputField" at line 76, column 13] #nested [in template "krad/WEB-INF/ftl/lib/fieldLbl.ftl" in macro "fieldLbl" at line 30, column 5] @krad.fieldLbl field=field [in template "krad/WEB-INF/ftl/components/field/dataInputField.ftl" in macro "uif_dataInputField" at line 24, column 9] #nested [in template "krad/WEB-INF/ftl/lib/div.ftl" in macro "div" at line 25, column 5] @krad.div component=field [in template "krad/WEB-INF/ftl/components/field/dataInputField.ftl" in macro "uif_dataInputField" at line 22, column 5] #inline "template" [in template "krad/WEB-INF/ftl/lib/template.ftl" in macro "template" at line 19, column 9] @krad.template component=item [in template "krad/WEB-INF/ftl/layout/box.ftl" in macro "uif_box" at line 40, column 12] dynamic-directive-call templateName [in template "krad/WEB-INF/ftl/components/group/group.ftl" in macro "uif_group" at line 26, column 9] #nested [in template "krad/WEB-INF/ftl/lib/groupWrap.ftl" in macro "groupWrap" at line 21, column 17] @krad.groupWrap group=group [in template "krad/WEB-INF/ftl/components/group/group.ftl" in macro "uif_group" at line 20, column 5] #inline "template" [in template "krad/WEB-INF/ftl/lib/template.ftl" in macro "template" at line 19, column 9] @krad.template componentUpdate=true c... [in template "krad/WEB-INF/ftl/updateComponent.ftl" at line 24, column 9] #include "updateComponent.ftl" [in template "krad/WEB-INF/ftl/uifRender.ftl" at line 51, column 17] #elseif KualiForm.ajaxReturnType == "... [in template "krad/WEB-INF/ftl/uifRender.ftl" at line 49, column 9] #elseif KualiForm.ajaxRequest [in template "krad/WEB-INF/ftl/uifRender.ftl" at line 42, column 5] ---------- Java stack trace (for programmers): ---------- freemarker.template.TemplateModelException: [... Exception message was already printed; see it above ...] at freemarker.ext.beans.OverloadedMethodsModel.exec(OverloadedMethodsModel.java:133) at freemarker.core.MethodCall._eval(MethodCall.java:98) at freemarker.core.Expression.eval(Expression.java:111) at freemarker.core.Assignment.accept(Assignment.java:106) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.IfBlock.accept(IfBlock.java:84) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.MixedContent.accept(MixedContent.java:93) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.Macro$Context.runMacro(Macro.java:209) at freemarker.core.Environment.visit(Environment.java:694) at freemarker.core.UnifiedCall.accept(UnifiedCall.java:116) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.MixedContent.accept(MixedContent.java:93) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.Macro$Context.runMacro(Macro.java:209) at freemarker.core.Environment.visit(Environment.java:694) at freemarker.core.UnifiedCall.accept(UnifiedCall.java:116) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.MixedContent.accept(MixedContent.java:93) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.Macro$Context.runMacro(Macro.java:209) at freemarker.core.Environment.visit(Environment.java:694) at freemarker.core.InlineTemplateUtils.invokeMacro(InlineTemplateUtils.java:140) at org.kuali.rice.krad.uif.freemarker.FreeMarkerInlineRenderUtils.renderTemplate(FreeMarkerInlineRenderUtils.java:199) at org.kuali.rice.krad.uif.freemarker.FreeMarkerTemplateAdaptor.accept(FreeMarkerTemplateAdaptor.java:57) at freemarker.core.InlineTemplateElement.accept(InlineTemplateElement.java:125) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.Macro$Context.runMacro(Macro.java:209) at freemarker.core.Environment.visit(Environment.java:694) at freemarker.core.UnifiedCall.accept(UnifiedCall.java:116) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.MixedContent.accept(MixedContent.java:93) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.IfBlock.accept(IfBlock.java:84) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.MixedContent.accept(MixedContent.java:93) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.Environment.visit(Environment.java:487) at freemarker.core.BodyInstruction.accept(BodyInstruction.java:93) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.MixedContent.accept(MixedContent.java:93) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.Macro$Context.runMacro(Macro.java:209) at freemarker.core.Environment.visit(Environment.java:694) at freemarker.core.UnifiedCall.accept(UnifiedCall.java:116) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.MixedContent.accept(MixedContent.java:93) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.Environment.visit(Environment.java:487) at freemarker.core.BodyInstruction.accept(BodyInstruction.java:93) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.MixedContent.accept(MixedContent.java:93) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.Macro$Context.runMacro(Macro.java:209) at freemarker.core.Environment.visit(Environment.java:694) at freemarker.core.UnifiedCall.accept(UnifiedCall.java:116) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.MixedContent.accept(MixedContent.java:93) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.Macro$Context.runMacro(Macro.java:209) at freemarker.core.Environment.visit(Environment.java:694) at freemarker.core.InlineTemplateUtils.invokeMacro(InlineTemplateUtils.java:140) at org.kuali.rice.krad.uif.freemarker.FreeMarkerInlineRenderUtils.renderTemplate(FreeMarkerInlineRenderUtils.java:199) at org.kuali.rice.krad.uif.freemarker.FreeMarkerTemplateAdaptor.accept(FreeMarkerTemplateAdaptor.java:57) at freemarker.core.InlineTemplateElement.accept(InlineTemplateElement.java:125) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.Macro$Context.runMacro(Macro.java:209) at freemarker.core.Environment.visit(Environment.java:694) at freemarker.core.UnifiedCall.accept(UnifiedCall.java:116) at freemarker.core.Environment.visitByHiddingParent(Environment.java:286) at freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:193) at freemarker.core.Environment.visitIteratorBlock(Environment.java:509) at freemarker.core.IteratorBlock.accept(IteratorBlock.java:103) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.MixedContent.accept(MixedContent.java:93) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.Macro$Context.runMacro(Macro.java:209) at freemarker.core.Environment.visit(Environment.java:694) at freemarker.core.DynamicCall.accept(DynamicCall.java:84) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.MixedContent.accept(MixedContent.java:93) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.Environment.visit(Environment.java:487) at freemarker.core.BodyInstruction.accept(BodyInstruction.java:93) at freemarker.core.Environment.visitByHiddingParent(Environment.java:286) at freemarker.core.ConditionalBlock.accept(ConditionalBlock.java:86) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.MixedContent.accept(MixedContent.java:93) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.Macro$Context.runMacro(Macro.java:209) at freemarker.core.Environment.visit(Environment.java:694) at freemarker.core.UnifiedCall.accept(UnifiedCall.java:116) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.MixedContent.accept(MixedContent.java:93) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.Macro$Context.runMacro(Macro.java:209) at freemarker.core.Environment.visit(Environment.java:694) at freemarker.core.InlineTemplateUtils.invokeMacro(InlineTemplateUtils.java:140) at org.kuali.rice.krad.uif.freemarker.FreeMarkerInlineRenderUtils.renderTemplate(FreeMarkerInlineRenderUtils.java:199) at org.kuali.rice.krad.uif.freemarker.FreeMarkerTemplateAdaptor.accept(FreeMarkerTemplateAdaptor.java:57) at freemarker.core.InlineTemplateElement.accept(InlineTemplateElement.java:125) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.Macro$Context.runMacro(Macro.java:209) at freemarker.core.Environment.visit(Environment.java:694) at freemarker.core.UnifiedCall.accept(UnifiedCall.java:116) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.MixedContent.accept(MixedContent.java:93) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.Environment.include(Environment.java:1712) at freemarker.core.Include.accept(Include.java:172) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.MixedContent.accept(MixedContent.java:93) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.IfBlock.accept(IfBlock.java:84) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.MixedContent.accept(MixedContent.java:93) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.IfBlock.accept(IfBlock.java:84) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.MixedContent.accept(MixedContent.java:93) at freemarker.core.Environment.visitByHiddingParent(Environment.java:286) at freemarker.core.Environment.visitAndTransform(Environment.java:377) at freemarker.core.CompressedBlock.accept(CompressedBlock.java:73) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.MixedContent.accept(MixedContent.java:93) at freemarker.core.Environment.visit(Environment.java:265) at freemarker.core.Environment.process(Environment.java:243) at freemarker.template.Template.process(Template.java:277) at org.springframework.web.servlet.view.freemarker.FreeMarkerView.processTemplate(FreeMarkerView.java:366) at org.springframework.web.servlet.view.freemarker.FreeMarkerView.doRender(FreeMarkerView.java:283) at org.springframework.web.servlet.view.freemarker.FreeMarkerView.renderMergedTemplateModel(FreeMarkerView.java:233) at org.springframework.web.servlet.view.AbstractTemplateView.renderMergedOutputModel(AbstractTemplateView.java:167) at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:263) at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1208) at org.springframework.web.servlet.DispatcherServlet.processDispatchResult(DispatcherServlet.java:992) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:939) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:856) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:936) at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:838) at javax.servlet.http.HttpServlet.service(HttpServlet.java:637) at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:812) 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.kuali.rice.krad.web.filter.CharsetFilter.doFilter(CharsetFilter.java:58) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.kuali.rice.krad.web.filter.UserLoginFilter.doFilter(UserLoginFilter.java:89) at org.kuali.rice.krad.web.filter.UserLoginFilter.doFilter(UserLoginFilter.java:77) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.kuali.rice.krad.web.filter.BootstrapFilterChain.doFilter(BootstrapFilter.java:327) at org.kuali.rice.krad.web.filter.DummyLoginFilter.doFilter(DummyLoginFilter.java:82) at org.kuali.rice.krad.web.filter.DummyLoginFilter.doFilter(DummyLoginFilter.java:62) at org.kuali.rice.krad.web.filter.BootstrapFilterChain.doFilter(BootstrapFilter.java:320) at org.kuali.rice.krad.web.filter.BootstrapFilter.doFilter(BootstrapFilter.java:199) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.kuali.rice.krad.web.filter.UifSessionTimeoutFilter.doFilter(UifSessionTimeoutFilter.java:128) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.kuali.rice.core.web.Log4JContextClearingFilter.doFilterInternal(Log4JContextClearingFilter.java:37) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.kuali.rice.krad.web.filter.HideWebInfFilter.doFilter(HideWebInfFilter.java:68) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.springframework.web.filter.AbstractRequestLoggingFilter.doFilterInternal(AbstractRequestLoggingFilter.java:213) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) 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:293) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) at java.lang.Thread.run(Thread.java:662) Caused by: org.springframework.beans.NotReadablePropertyException: Invalid property 'chargeAmount' of bean class [org.kuali.rice.krad.labs.transaction.TransactionForm]: Bean property 'chargeAmount' is not readable or has an invalid getter method: Does the return type of the getter match the parameter type of the setter? at org.springframework.beans.BeanWrapperImpl.getPropertyValue(BeanWrapperImpl.java:707) at org.springframework.beans.BeanWrapperImpl.getPropertyValue(BeanWrapperImpl.java:699) at org.kuali.rice.krad.web.bind.UifViewBeanWrapper.getPropertyValue(UifViewBeanWrapper.java:207) at org.springframework.validation.AbstractPropertyBindingResult.getActualFieldValue(AbstractPropertyBindingResult.java:99) at org.springframework.validation.AbstractBindingResult.getFieldValue(AbstractBindingResult.java:218) at org.springframework.web.servlet.support.BindStatus.(BindStatus.java:120) at org.springframework.web.servlet.support.RequestContext.getBindStatus(RequestContext.java:735) at sun.reflect.GeneratedMethodAccessor536.invoke(Unknown Source) 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:912) at freemarker.ext.beans.OverloadedMethodsModel.exec(OverloadedMethodsModel.java:103) ... 182 more
      
      

      AFT Step: Open /kr-krad/labs?viewId=LabsMenuView
      AFT Step: Click KSA Transaction link.
      AFT Step: Type into testField the text: a
      AFT Step: Assert text 'Charges' is present.
      AFT Step: Click delete button.
      AFT Step: Assert text 'Deleting Line' is present.
      AFT Step:
      Last AFT URL: http://env14.rice.kuali.org/kr-krad/transaction?viewId=TransactionView&formKey=0684b178-98c1-4ee8-b6d7-fb082688c773&cacheKey=j5ou16w8rushr5uq8tt3tt
      Registering session failed a985c685271d41b5880af296b2b347cc

      Abbreviated test name: LabsKsaTransactionAft.testKsaTransactionNav
      Full test name: org.kuali.rice.krad.labs.LabsKsaTransactionAft.testKsaTransactionNav
      Test results url: http://ci.rice.kuali.org/job/rice-2.4-test-functional-saucelabs-krad-labs/lastCompletedBuild/testReport/org.kuali.rice.krad.labs/LabsKsaTransactionAft/testKsaTransactionNav/

        Attachments

          Issue Links

            Activity

            There are no comments yet on this issue.

              People

              • Assignee:
                jkneal Jerry Neal (Inactive)
                Reporter:
                eghm-kuali-m Erik Meade
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Time Tracking

                  Estimated:
                  Original Estimate - 4 hours
                  4h
                  Remaining:
                  Remaining Estimate - 4 hours
                  4h
                  Logged:
                  Time Spent - Not Specified
                  Not Specified