Uploaded image for project: 'Tapestry 5'
  1. Tapestry 5
  2. TAP5-1088

Bean editor model for <class name> already contains a property model for property <property name> when combining model parameter with add parameter of BeanEditor or BeanEditForm


    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 5.2.0
    • Fix Version/s: 5.2.0
    • Component/s: tapestry-core
    • Labels:


      I'm getting exception in my app:

      Render queue error in SetupRender[Details:itemeditor]: Bean editor model for org.apache.tapestry5.integration.app7.data.Item already contains a property model for property 'displayName'.

      Not sure if this is a bug or my misunderstanding of some T5 concepts.

      Here is my use case:

      I have 'Index' page displaying a list of items in a grid. Every row in the grid has an 'Edit' link (pagelink) that leads to 'Details' page where I can edit selected item using BeanEditor component. After clicking Submit application should redirect me back to 'Index' page where I can see the list with updated item. I may want to click 'Edit' once again and repeat the use case, but now at this place I get an exception I noted above.

      Here's my 'Item' class:

      package org.apache.tapestry5.integration.app7.data;

      public class Item {

      private int id;

      public Item(int id)

      { this.id = id; }

      public int getId() { return id; }

      public void setId(int id) { this.id = id; }

      public String getDisplayName()

      { return "Item #" + id; }


      and a part of beaneditor markup on Details page:

      <t:beaneditor t:id="itemEditor" object="item" add="displayName"
      submitLabel="Apply Edit">

      You can see I declare new property (displayName) for the Item bean model. This works fine the first time I navigate to the Details page, but fails on the second time.

      To illustrate the exception I wrote a simple test case (see attachment). I took app6 integration test of tapestry-core tests as a reference (from trunk version on github) and implemented the test case in a new test application (app7).

      Hope this will help to understand the issue.




            • Assignee:
              hlship Howard M. Lewis Ship
              dmitrygusev Dmitry Gusev
            • Votes:
              1 Vote for this issue
              1 Start watching this issue


              • Created: