public void initialSyncUIWithDataModel() {
    // Esto es necesario por ejemplo porque al inicializarse el UI se eliminan todos
    // los nodos, volverán a crearse al sincronizarse con el data model,
    // pero ahora sin el atributo selected que había originalmente en los nodos
    // seleccionados

    ItsNatHTMLSelectMultImpl comp = getItsNatHTMLSelectMult();
    ListSelectionModel selModel = comp.getListSelectionModel();

    int len = comp.getListModel().getSize();
    ItsNatListMultSelUIInternal compUI = comp.getItsNatListMultSelUIInternal();
    for (int i = 0; i <= len; i++) {
      boolean selected = selModel.isSelectedIndex(i);
      compUI.setSelectedIndex(i, selected);
    }

    HTMLSelectElement elem = getItsNatHTMLSelectMult().getHTMLSelectElement();
    ((ItsNatNodeInternal) elem)
        .addEventListenerInternal(
            "DOMCharacterDataModified",
            this,
            false); // Para cuando cambie el contenido de una opción
    ((ItsNatNodeInternal) elem)
        .addEventListenerInternal("DOMAttrModified", this, false); // Para el atributo selected

    super.initialSyncUIWithDataModel();
  }