Uploaded image for project: 'ZK'
  1. ZK
  2. ZK-2127

Annotation data binding doesn't work properly with ZK 6.5.3 and later

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 6.5.3, 7.0.0, 6.5.4
    • Fix Version/s: 7.0.1, 6.5.6
    • Component/s: None
    • Security Level: Jimmy
    • Labels:
      None

      Description

      as code below, the combobox should become enabled when clicking 'CONTACT',
      it works well with 6.5.3 but has problem including and after 6.5.4

      Furthermore, it doesn't work properly as soon as you change 'onClick' event to 'onCheck' event,
      including and after 6.5.3,
      the setter will be triggered only once, and the order is not correct.

      <?init class="org.zkoss.zkplus.databind.AnnotateDataBinderInit" ?>
      <zk>
          <window>
              <zscript><![CDATA[
              class SelectionModel{
                  String ticketAuthorType = "CURRENT";
                  selectedAuthorContact = null;
      
                  public String getTicketAuthorType() {
                      return ticketAuthorType;
                  }
      
                  public void setTicketAuthorType(String string) {
                  	System.out.println("setTicketAuthorType " + string);
                      ticketAuthorType = string;
                  }
      
                  public String getSelectedAuthorContact() {
                      return selectedAuthorContact;
                  }
      
                  public void setSelectedAuthorContact(String string) {
                      selectedAuthorContact = string;
                  }
      
                  public getContacts() {
                      if("CURRENT".equals(ticketAuthorType)) {
                          return new String[]{};
                      } else {
                          return new String[] {"Jean Dupont", "Jeanne Dupond"};
                      }
                  }
              }
              class MyClass {
                  SelectionModel selectionModel = new SelectionModel();
                  public SelectionModel getSelectionModel() {
                      return selectionModel;
                  }
                  public isTicketAuthorContactDisabled() {
                  	System.out.println("isTicketAuthorContactDisabled");
                  	System.out.println(selectionModel.ticketAuthorType);
                      return !"CONTACT".equals(selectionModel.ticketAuthorType);
                  }
                  public boolean getTicketAuthorContactDisabled() {
                  	System.out.println("getTicketAuthorContactDisabled");
                  	System.out.println(selectionModel.ticketAuthorType);
                      return !"CONTACT".equals(selectionModel.ticketAuthorType);
                  }
              }
              controller = new MyClass();
          ]]>
              </zscript>
              <radiogroup id="ticketAuthorTypeField" onClick='System.out.println("checked");'
                          selectedItem="@{controller.selectionModel.ticketAuthorType, save-when='self.onClick'}">
      
                  <radio label="CURRENT:"
                         value="CURRENT"/>
      
                  <radio label="CONTACT:"
                         value="CONTACT"/>
      
                  <combobox id="authorContactField" sclass="koalyexpOptionL"
                            autodrop="true" buttonVisible="false"
                            model="@{controller.selectionModel.contacts, load-after='ticketAuthorTypeField.onClick'}"
                            selectedItem="@{controller.selectionModel.selectedAuthorContact, save-when='self.onSelect', load-after='ticketAuthorTypeField.onClick'}"
                            disabled="@{controller.ticketAuthorContactDisabled, load-after='ticketAuthorTypeField.onClick'}">
                      <comboitem self="@{each=contact}" label="@{contact}"/>
                  </combobox>
      
              </radiogroup>
          </window>
      </zk>
      

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              noahhuang noahhuang
              Reporter:
              benbai benbai
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: