Tapestry
  1. Tapestry
  2. TAPESTRY-1820

RenderBlock fails to operate with persistent properties off of PropertySelection

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Invalid
    • Affects Version/s: 4.1.3
    • Fix Version/s: 4.1.5
    • Component/s: Framework
    • Labels:
      None
    • Environment:

      Description

      While developing a Gallery widget in trails... I have found that properties with PropertySelection are operating flakey.

      I have 3 renderblocks
      <form jwcid="galleryForm@Form" listener="listener:onFormSubmit">
      <div jwcid="headerSelect@RenderBlock" block="ognl:components.autoPagingContent" />
      <div jwcid="content@RenderBlock" block="ognl:components.collectionContent" />
      <div jwcid="footerSelect@RenderBlock" block="ognl:components.autoPagingContent" />
      </form>

      The RenderBlock issue is confused....

      Additionally, prefixed "do" listeners fail to invoke.

      Additionally @persist fails to work when defined in the JAVA instead of JWC.

      The main issue for renderBlock is The select components in the footerSelect are clobbering the values in headerSelect internally. yet, All the id's are unique. Is this because the actual array is forced to be declared static?

      Here is my model (sources attached)

      Gallery.html
      <span jwcid="autoPagingContent@Block">
      <table width="100%" border=1>
      <tr>
      <td width="25%" align="left" NOWRAP>
      <span jwcid="@Insert" value="Table Size"/>
      <select jwcid="tableSizeSelect" listener="listener:doTableSizeSelect"
      parameters="ognl:tableSize" onchange="tapestry.form.refresh(this.form)"/>
      <span jwcid="@Insert" value="Paging Span"/>
      <select jwcid="pagingSpanSelect" listener="listener:doPagingSpanSelect"
      parameters="ognl:pagingSpan" onchange="tapestry.form.refresh(this.form)"/>
      </td>
      ... snip
      </span>

      <form jwcid="galleryForm@Form" listener="listener:onFormSubmit">
      <div jwcid="headerSelect@RenderBlock" block="ognl:components.autoPagingContent" />
      <div jwcid="content@RenderBlock" block="ognl:components.collectionContent" />
      <div jwcid="footerSelect@RenderBlock" block="ognl:components.autoPagingContent" />
      </form>

      Gallery.jwc
      <component-specification class="org.trails.demo.components.Gallery"
      allow-body="yes"
      allow-informal-parameters="yes">
      <parameter name="autoPagingContentParm"/>
      <parameter name="collectionContentParm"/>

      <property name="tableSize" persist="session"/>
      <property name="pagingSpan" persist="session"/>

      <property name="theTableSizeValue" persist="session"/>
      <property name="thePagingSpanValue" persist="session"/>

      <component id="tableSizeSelect" type="PropertySelection">
      <binding name="value" value="theTableSizeValue"/>
      <binding name="model" value="tableSizeModel"/>
      </component>

      <component id="pagingSpanSelect" type="PropertySelection">
      <binding name="value" value="thePagingSpanValue"/>
      <binding name="model" value="pagingSpanModel"/>
      </component>
      </component-specification>

      1. Gallery.jwc
        1.0 kB
        Kenneth William
      2. Gallery.html
        3 kB
        Kenneth William
      3. Gallery.java
        5 kB
        Kenneth William
      4. screensnapshot.doc
        160 kB
        Kenneth William

        Activity

        No work has yet been logged on this issue.

          People

          • Assignee:
            Unassigned
            Reporter:
            Kenneth William
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development