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

Setting collection field as readonly throws exception

    Details

    • Type: Bug Fix
    • Status: Closed
    • Priority: Major
    • Resolution: Cannot Reproduce
    • Affects Version/s: None
    • Fix Version/s: 2.4
    • Component/s: Development
    • Security Level: Public (Public: Anyone can view)
    • Labels:
      None
    • Rice Module:
      KRAD
    • Sprint:
      2.4.0-rc1 Sprint 5, 2.4.0-rc1 Sprint 6, 2.4.0-rc1 Sprint 7, 2.4.0-rc1 Sprint 8
    • KAI Review Status:
      Not Required
    • KTI Review Status:
      Not Required
    • Code Review Status:
      Not Required
    • Include in Release Notes?:
      Yes

      Description

      From: tbornholtz@kuali.org tbornholtz@kuali.org
      Sent: Wednesday, July 31, 2013 3:46 PM
      To: rice.usergroup.krad@kuali.org
      Cc: tbornholtz@kuali.org
      Subject: Re:

      {Rice KRAD User Group} NullPointerException when collection is not readonly.

      Sorry for not mentioning it, but I did remove the readOnly property on the collection too and it didn't make any difference.

      Let me know the details of the jira (or if you want me to add it) and I'll add as much detail as I can. This seems like an odd one and I know I've got other places in code where some columns are readonly and others are not. I'm not sure how to dig into this one to provide the right details to be able to find the issue. And I still haven't ruled out me doing something dumb elsewhere in my code.


      On Wednesday, July 31, 2013 3:42:00 PM UTC-4, Jerry Neal wrote:
      Hi Tim,

      It either is not getting the readonly setter or still invoking the setter for some reason when readonly. Can you try removing the readOnly=”false” from the collection group (which is the default) and see if there is maybe an override issue?

      We’ll create a Jira to investigate further as well.

      Jerry

      From: tborn...@kuali.org tborn...@kuali.org
      Sent: Wednesday, July 31, 2013 3:10 PM
      To: rice.user...@kuali.org
      Subject: {Rice KRAD User Group}

      NullPointerException when collection is not readonly.

      I have a table where I need one column modifiable and the rest of the columns read only. I've trimmed this example here to be the very minimal amount of code needed to be able to reproduce this problem.

      This section of XML that works correctly and renders the table with the one column read only:

      <bean id="transactionTypeProcessingPriority" parent="Uif-Disclosure-TableCollectionSection">
      <property name="readOnly" value="true"/>
      <property name="collectionObjectClass" value="com.sigmasys.kuali.ksa.krad.model.TransactionTypeGroupModel"/>
      <property name="propertyName" value="transactionTypes"/>
      <property name="layoutManager.sequencePropertyName" value="currentTransactionType.id.id"/>
      <property name="items">
      <list>
      <bean parent="Uif-InputField" p:label="ID" p:propertyName="currentTransactionType.id.id" p:readOnly="true" p:width="10%"/>
      </list>
      </property>
      </bean>

      But if I change the collection's readOnly value to false:

      <bean id="transactionTypeProcessingPriority" parent="Uif-Disclosure-TableCollectionSection">
      <property name="readOnly" value="false"/>
      <property name="collectionObjectClass" value="com.sigmasys.kuali.ksa.krad.model.TransactionTypeGroupModel"/>
      <property name="propertyName" value="transactionTypes"/>
      <property name="layoutManager.sequencePropertyName" value="currentTransactionType.id.id"/>
      <property name="items">
      <list>
      <bean parent="Uif-InputField" p:label="ID" p:propertyName="currentTransactionType.id.id" p:readOnly="true" p:width="10%"/>
      </list>
      </property>
      </bean>

      Then I get this stack trace:

      I'm getting an error that "currentTransactionType.id.id" doesn't have a setter. That's correct and I can't really add a setter for this property and the column is supposed to be readonly.

      31 Jul 2013 15:07:22,718 ERROR com.sigmasys.kuali.ksa.servlet.CoreFilter - Error occurred while serving HTTP request: Request processing failed; nested exception is freemarker.template.TemplateModelException: Method public org.springframework.web.servlet.support.BindStatus org.springframework.web.servlet.support.RequestContext.getBindStatus(java.lang.String,boolean) throws java.lang.IllegalStateException threw an exception when invoked on org.springframework.web.servlet.support.RequestContext@2a9cbb1b with arguments of types [java.lang.String,java.lang.Boolean,]
      org.springframework.web.util.NestedServletException: Request processing failed; nested exception is freemarker.template.TemplateModelException: Method public org.springframework.web.servlet.support.BindStatus org.springframework.web.servlet.support.RequestContext.getBindStatus(java.lang.String,boolean) throws java.lang.IllegalStateException threw an exception when invoked on org.springframework.web.servlet.support.RequestContext@2a9cbb1b with arguments of types [java.lang.String,java.lang.Boolean,]
      at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:894)
      at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:778)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
      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 org.kuali.rice.krad.web.filter.HideWebInfFilter.doFilter(HideWebInfFilter.java:68)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
      at com.sigmasys.kuali.ksa.servlet.CoreFilter.doFilter(CoreFilter.java:112)
      at com.sigmasys.kuali.ksa.servlet.CoreFilter.doFilter(CoreFilter.java:69)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
      at org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:77)
      at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
      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.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
      at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
      at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
      at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004)
      at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
      at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:1822)
      at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
      at java.lang.Thread.run(Thread.java:662)
      Caused by: freemarker.template.TemplateModelException: Method public org.springframework.web.servlet.support.BindStatus org.springframework.web.servlet.support.RequestContext.getBindStatus(java.lang.String,boolean) throws java.lang.IllegalStateException threw an exception when invoked on org.springframework.web.servlet.support.RequestContext@2a9cbb1b with arguments of types [java.lang.String,java.lang.Boolean,]
      at freemarker.ext.beans.OverloadedMethodModel.exec(OverloadedMethodModel.java:134)
      at freemarker.core.MethodCall._getAsTemplateModel(MethodCall.java:93)
      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.Macro$Context.runMacro(Macro.java:172)
      at freemarker.core.Environment.visit(Environment.java:614)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:106)
      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.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.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.visit(Environment.java:310)
      at freemarker.core.BlockAssignment.accept(BlockAssignment.java:83)
      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.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.visit(Environment.java:406)
      at freemarker.core.BodyInstruction.accept(BodyInstruction.java:93)
      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.Macro$Context.runMacro(Macro.java:172)
      at freemarker.core.Environment.visit(Environment.java:614)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:106)
      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.visit(Environment.java:406)
      at freemarker.core.BodyInstruction.accept(BodyInstruction.java:93)
      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.Macro$Context.runMacro(Macro.java:172)
      at freemarker.core.Environment.visit(Environment.java:614)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:106)
      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.Macro$Context.runMacro(Macro.java:172)
      at freemarker.core.Environment.visit(Environment.java:614)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:106)
      at freemarker.core.Environment.visit(Environment.java:221)
      at freemarker.core.Environment.include(Environment.java:1508)
      at freemarker.core.Interpret$TemplateProcessorModel.getWriter(Interpret.java:141)
      at freemarker.core.Environment.visit(Environment.java:297)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:130)
      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.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.ConditionalBlock.accept(ConditionalBlock.java:79)
      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.visit(Environment.java:310)
      at freemarker.core.CompressedBlock.accept(CompressedBlock.java:73)
      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.Macro$Context.runMacro(Macro.java:172)
      at freemarker.core.Environment.visit(Environment.java:614)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:106)
      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.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.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.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.Macro$Context.runMacro(Macro.java:172)
      at freemarker.core.Environment.visit(Environment.java:614)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:106)
      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.ConditionalBlock.accept(ConditionalBlock.java:79)
      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.Macro$Context.runMacro(Macro.java:172)
      at freemarker.core.Environment.visit(Environment.java:614)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:106)
      at freemarker.core.Environment.visit(Environment.java:221)
      at freemarker.core.Environment.include(Environment.java:1508)
      at freemarker.core.Interpret$TemplateProcessorModel.getWriter(Interpret.java:141)
      at freemarker.core.Environment.visit(Environment.java:297)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:130)
      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.visit(Environment.java:406)
      at freemarker.core.BodyInstruction.accept(BodyInstruction.java:93)
      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.visit(Environment.java:406)
      at freemarker.core.BodyInstruction.accept(BodyInstruction.java:93)
      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.Macro$Context.runMacro(Macro.java:172)
      at freemarker.core.Environment.visit(Environment.java:614)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:106)
      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.Macro$Context.runMacro(Macro.java:172)
      at freemarker.core.Environment.visit(Environment.java:614)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:106)
      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.Macro$Context.runMacro(Macro.java:172)
      at freemarker.core.Environment.visit(Environment.java:614)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:106)
      at freemarker.core.Environment.visit(Environment.java:221)
      at freemarker.core.Environment.include(Environment.java:1508)
      at freemarker.core.Interpret$TemplateProcessorModel.getWriter(Interpret.java:141)
      at freemarker.core.Environment.visit(Environment.java:297)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:130)
      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.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.ConditionalBlock.accept(ConditionalBlock.java:79)
      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.visit(Environment.java:310)
      at freemarker.core.CompressedBlock.accept(CompressedBlock.java:73)
      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.Macro$Context.runMacro(Macro.java:172)
      at freemarker.core.Environment.visit(Environment.java:614)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:106)
      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.Macro$Context.runMacro(Macro.java:172)
      at freemarker.core.Environment.visit(Environment.java:614)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:106)
      at freemarker.core.Environment.visit(Environment.java:221)
      at freemarker.core.Environment.include(Environment.java:1508)
      at freemarker.core.Interpret$TemplateProcessorModel.getWriter(Interpret.java:141)
      at freemarker.core.Environment.visit(Environment.java:297)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:130)
      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.visit(Environment.java:406)
      at freemarker.core.BodyInstruction.accept(BodyInstruction.java:93)
      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.visit(Environment.java:406)
      at freemarker.core.BodyInstruction.accept(BodyInstruction.java:93)
      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.Macro$Context.runMacro(Macro.java:172)
      at freemarker.core.Environment.visit(Environment.java:614)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:106)
      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.Macro$Context.runMacro(Macro.java:172)
      at freemarker.core.Environment.visit(Environment.java:614)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:106)
      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.Macro$Context.runMacro(Macro.java:172)
      at freemarker.core.Environment.visit(Environment.java:614)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:106)
      at freemarker.core.Environment.visit(Environment.java:221)
      at freemarker.core.Environment.include(Environment.java:1508)
      at freemarker.core.Interpret$TemplateProcessorModel.getWriter(Interpret.java:141)
      at freemarker.core.Environment.visit(Environment.java:297)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:130)
      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.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.ConditionalBlock.accept(ConditionalBlock.java:79)
      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.visit(Environment.java:310)
      at freemarker.core.CompressedBlock.accept(CompressedBlock.java:73)
      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.Macro$Context.runMacro(Macro.java:172)
      at freemarker.core.Environment.visit(Environment.java:614)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:106)
      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.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.visit(Environment.java:406)
      at freemarker.core.BodyInstruction.accept(BodyInstruction.java:93)
      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.visit(Environment.java:406)
      at freemarker.core.BodyInstruction.accept(BodyInstruction.java:93)
      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.Macro$Context.runMacro(Macro.java:172)
      at freemarker.core.Environment.visit(Environment.java:614)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:106)
      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.Macro$Context.runMacro(Macro.java:172)
      at freemarker.core.Environment.visit(Environment.java:614)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:106)
      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.Macro$Context.runMacro(Macro.java:172)
      at freemarker.core.Environment.visit(Environment.java:614)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:106)
      at freemarker.core.Environment.visit(Environment.java:221)
      at freemarker.core.Environment.include(Environment.java:1508)
      at freemarker.core.Interpret$TemplateProcessorModel.getWriter(Interpret.java:141)
      at freemarker.core.Environment.visit(Environment.java:297)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:130)
      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.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.ConditionalBlock.accept(ConditionalBlock.java:79)
      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.visit(Environment.java:310)
      at freemarker.core.CompressedBlock.accept(CompressedBlock.java:73)
      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.Macro$Context.runMacro(Macro.java:172)
      at freemarker.core.Environment.visit(Environment.java:614)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:106)
      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.Macro$Context.runMacro(Macro.java:172)
      at freemarker.core.Environment.visit(Environment.java:614)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:106)
      at freemarker.core.Environment.visit(Environment.java:221)
      at freemarker.core.Environment.include(Environment.java:1508)
      at freemarker.core.Interpret$TemplateProcessorModel.getWriter(Interpret.java:141)
      at freemarker.core.Environment.visit(Environment.java:297)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:130)
      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.visit(Environment.java:406)
      at freemarker.core.BodyInstruction.accept(BodyInstruction.java:93)
      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.visit(Environment.java:406)
      at freemarker.core.BodyInstruction.accept(BodyInstruction.java:93)
      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.Macro$Context.runMacro(Macro.java:172)
      at freemarker.core.Environment.visit(Environment.java:614)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:106)
      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.Macro$Context.runMacro(Macro.java:172)
      at freemarker.core.Environment.visit(Environment.java:614)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:106)
      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.Macro$Context.runMacro(Macro.java:172)
      at freemarker.core.Environment.visit(Environment.java:614)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:106)
      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.Macro$Context.runMacro(Macro.java:172)
      at freemarker.core.Environment.visit(Environment.java:614)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:106)
      at freemarker.core.Environment.visit(Environment.java:221)
      at freemarker.core.Environment.include(Environment.java:1508)
      at freemarker.core.Interpret$TemplateProcessorModel.getWriter(Interpret.java:141)
      at freemarker.core.Environment.visit(Environment.java:297)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:130)
      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.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.ConditionalBlock.accept(ConditionalBlock.java:79)
      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.visit(Environment.java:310)
      at freemarker.core.CompressedBlock.accept(CompressedBlock.java:73)
      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.Macro$Context.runMacro(Macro.java:172)
      at freemarker.core.Environment.visit(Environment.java:614)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:106)
      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.visit(Environment.java:406)
      at freemarker.core.BodyInstruction.accept(BodyInstruction.java:93)
      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.Macro$Context.runMacro(Macro.java:172)
      at freemarker.core.Environment.visit(Environment.java:614)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:106)
      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.Macro$Context.runMacro(Macro.java:172)
      at freemarker.core.Environment.visit(Environment.java:614)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:106)
      at freemarker.core.Environment.visit(Environment.java:221)
      at freemarker.core.Environment.include(Environment.java:1508)
      at freemarker.core.Interpret$TemplateProcessorModel.getWriter(Interpret.java:141)
      at freemarker.core.Environment.visit(Environment.java:297)
      at freemarker.core.UnifiedCall.accept(UnifiedCall.java:130)
      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.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.ConditionalBlock.accept(ConditionalBlock.java:79)
      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.visit(Environment.java:310)
      at freemarker.core.CompressedBlock.accept(CompressedBlock.java:73)
      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.Macro$Context.runMacro(Macro.java:1
      ...

        Attachments

          Activity

          Hide
          matthew.wuertz Matthew Wuertz (Inactive) added a comment -

          Tim, could you attach your com.sigmasys.kuali.ksa.krad.model.TransactionTypeGroupModel class? I'm having trouble reproducing this issue. Thanks.

          Show
          matthew.wuertz Matthew Wuertz (Inactive) added a comment - Tim, could you attach your com.sigmasys.kuali.ksa.krad.model.TransactionTypeGroupModel class? I'm having trouble reproducing this issue. Thanks.
          Hide
          tbornholtz Tim Bornholtz (Inactive) added a comment -
          Show
          tbornholtz Tim Bornholtz (Inactive) added a comment - The current version of this class is at: https://svn.kuali.org/repos/student/contrib/ksa/trunk/ksa-core/src/main/java/com/sigmasys/kuali/ksa/krad/model/TransactionTypeGroupModel.java Please let me know if I can help in any way.
          Hide
          matthew.wuertz Matthew Wuertz (Inactive) added a comment -

          Tim, where can I find the TransactionType class?

          Show
          matthew.wuertz Matthew Wuertz (Inactive) added a comment - Tim, where can I find the TransactionType class?
          Hide
          matthew.wuertz Matthew Wuertz (Inactive) added a comment -

          I don't have access to all of the classes referenced in the original example. But I tried to reproduce it with the following:

          <bean id="Demo-TableLayoutManager-Example11" parent="Uif-VerticalBoxSection" p:headerText="Issue">
          <property name="items">
          <list>
          <!-- ex:Demo-TableLayoutManager-Example11 start-->
          <bean parent="Uif-Disclosure-TableCollectionSection" p:layoutManager.numberOfColumns="1">
          <property name="readOnly" value="false"/>
          <property name="collectionObjectClass" value="org.kuali.rice.krad.demo.uif.form.UITestObject"/>
          <!-<property name="propertyName" value="transactionTypes"/>->
          <property name="propertyName" value="collection1"/>
          <property name="layoutManager.sequencePropertyName" value="readOnlyField"/>
          <!-<property name="layoutManager.sequencePropertyName" value="currentTransactionType.id.id"/>->
          <property name="items">
          <list>
          <!-<bean parent="Uif-InputField" p:label="ID" p:propertyName="currentTransactionType.id.id" p:readOnly="true" p:width="10%"/>->
          <bean parent="Uif-InputField" p:label="ID" p:propertyName="readOnlyField" p:readOnly="false" p:width="10%"/>
          </list>
          </property>
          </bean>
          <!-- ex:Demo-TableLayoutManager-Example11 end-->
          </list>
          </property>
          </bean>

          I could not do so. I suspect this was fixed sometime in the past 8 months.

          Show
          matthew.wuertz Matthew Wuertz (Inactive) added a comment - I don't have access to all of the classes referenced in the original example. But I tried to reproduce it with the following: <bean id="Demo-TableLayoutManager-Example11" parent="Uif-VerticalBoxSection" p:headerText="Issue"> <property name="items"> <list> <!-- ex:Demo-TableLayoutManager-Example11 start--> <bean parent="Uif-Disclosure-TableCollectionSection" p:layoutManager.numberOfColumns="1"> <property name="readOnly" value="false"/> <property name="collectionObjectClass" value="org.kuali.rice.krad.demo.uif.form.UITestObject"/> <!- <property name="propertyName" value="transactionTypes"/> -> <property name="propertyName" value="collection1"/> <property name="layoutManager.sequencePropertyName" value="readOnlyField"/> <!- <property name="layoutManager.sequencePropertyName" value="currentTransactionType.id.id"/> -> <property name="items"> <list> <!- <bean parent="Uif-InputField" p:label="ID" p:propertyName="currentTransactionType.id.id" p:readOnly="true" p:width="10%"/> -> <bean parent="Uif-InputField" p:label="ID" p:propertyName="readOnlyField" p:readOnly="false" p:width="10%"/> </list> </property> </bean> <!-- ex:Demo-TableLayoutManager-Example11 end--> </list> </property> </bean> I could not do so. I suspect this was fixed sometime in the past 8 months.

            People

            • Assignee:
              matthew.wuertz Matthew Wuertz (Inactive)
              Reporter:
              tbornholtz Tim Bornholtz (Inactive)
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Time Tracking

                Estimated:
                Original Estimate - 1 day
                1d
                Remaining:
                Remaining Estimate - 6 hours
                6h
                Logged:
                Time Spent - Not Specified Time Not Required
                Not Specified