How to customize search result listing columns ?

Hi,

I now almost finish my journey to upgrade Nuxeo from version 5.1 to 5.5. However, my user notice a little change in version 5.5 search result listing: the column “Description” is no longer available.

alt text

alt text

This is critical in their work. How can I customize search result listing so that we've got our “Description” column back ? I've spend many man-days trying to read Nuxeo Technical Document but still not being able to accomplish anything.

Thanks

UPDATED: I've tried this for “my-config.xml” but nothing happens

<?xml version="1.0"?>
<component name="com.boonthavorn.creation.contentView.contrib">
  <require>org.nuxeo.ecm.platform.forms.layouts.webapp.listing</require>
  <extension target="org.nuxeo.ecm.platform.forms.layout.WebLayoutManager" point="layouts">
    <layout name="document_listing">
      <templates>
        <template mode="any">/layouts/layout_listing_template.xhtml</template>
        <template mode="csv">/layouts/layout_listing_csv_template.xhtml</template>
        <template mode="pdf">/layouts/layout_listing_pdf_template.xhtml</template>
      </templates>
      <properties mode="any">
        <property name="showListingHeader">true</property>
        <property name="showRowEvenOddClass">true</property>
      </properties>
      <columns>

        <!-- BEGIN: added columns -->
        <column name="description" selectedByDefault="false">
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:description</property>
            <property name="label">description</property>
          </properties>
          <properties mode="edit_sort_infos">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <properties mode="edit_sort_infos_map">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <widget>listing_description</widget>
        </column>
        <!-- END: added columns -->

        <column>
          <properties mode="any">
            <property name="isListingSelectionBoxWithCurrentDocument">
              true
            </property>
            <property name="useFirstWidgetLabelAsColumnHeader">false</property>
            <property name="columnStyleClass">iconColumn</property>
          </properties>
          <properties mode="csv">
            <property name="isHidden">true</property>
          </properties>
          <properties mode="pdf">
            <property name="isHidden">true</property>
          </properties>
          <widget>listing_selection_box_with_current_document</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">false</property>
            <property name="columnStyleClass">iconColumn</property>
          </properties>
          <widget>listing_icon_type</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:title</property>
          </properties>
          <widget>listing_title_link</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="columnStyleClass">iconColumn</property>
          </properties>
          <properties mode="csv">
            <property name="isHidden">true</property>
          </properties>
          <properties mode="pdf">
            <property name="isHidden">true</property>
          </properties>
          <widget>listing_lock_icon</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:modified</property>
            <property name="defaultSortAscending">false</property>
          </properties>
          <widget>listing_modification_date</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:lastContributor</property>
          </properties>
          <widget>listing_last_contributor</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="columnStyleClass">iconColumn</property>
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="isSortable">false</property>
          </properties>
          <widget>listing_version</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">
              ecm:currentLifeCycleState
            </property>
          </properties>
          <widget>listing_lifecycle</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="columnStyleClass">iconColumn</property>
          </properties>
          <properties mode="csv">
            <property name="isHidden">true</property>
          </properties>
          <properties mode="pdf">
            <property name="isHidden">true</property>
          </properties>
          <widget>listing_livedit_link</widget>
        </column>
      </columns>
    </layout>

    <layout name="document_listing_ajax">
      <templates>
        <template mode="any">
          /layouts/layout_listing_ajax_template.xhtml
        </template>
        <template mode="csv">
          /layouts/layout_listing_csv_template.xhtml
        </template>
        <template mode="pdf">
          /layouts/layout_listing_pdf_template.xhtml
        </template>
      </templates>
      <properties mode="any">
        <property name="showListingHeader">true</property>
        <property name="showRowEvenOddClass">true</property>
      </properties>
      <columns>

        <!-- BEGIN: added columns -->
        <column name="description" selectedByDefault="false">
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:description</property>
            <property name="label">description</property>
          </properties>
          <properties mode="edit_sort_infos">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <properties mode="edit_sort_infos_map">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <widget>listing_description</widget>
        </column>
        <!-- END: added columns -->

    <column>
          <properties mode="any">
            <property name="isListingSelectionBoxWithCurrentDocument">
              true
            </property>
            <property name="useFirstWidgetLabelAsColumnHeader">false</property>
            <property name="columnStyleClass">iconColumn</property>
          </properties>
          <properties mode="csv">
            <property name="isHidden">true</property>
          </properties>
          <properties mode="pdf">
            <property name="isHidden">true</property>
          </properties>
          <widget>listing_ajax_selection_box_with_current_document</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">false</property>
            <property name="columnStyleClass">iconColumn</property>
          </properties>
          <widget>listing_icon_type</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:title</property>
          </properties>
          <widget>listing_title_link</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="columnStyleClass">iconColumn</property>
          </properties>
          <properties mode="csv">
            <property name="isHidden">true</property>
          </properties>
          <properties mode="pdf">
            <property name="isHidden">true</property>
          </properties>
          <widget>listing_lock_icon</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:modified</property>
          </properties>
          <widget>listing_modification_date</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:lastContributor</property>
          </properties>
          <widget>listing_last_contributor</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="columnStyleClass">iconColumn</property>
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="isSortable">false</property>
          </properties>
          <widget>listing_version</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">
              ecm:currentLifeCycleState
            </property>
          </properties>
          <widget>listing_lifecycle</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="columnStyleClass">iconColumn</property>
          </properties>
          <properties mode="csv">
            <property name="isHidden">true</property>
          </properties>
          <properties mode="pdf">
            <property name="isHidden">true</property>
          </properties>
          <widget>listing_livedit_link</widget>
        </column>
      </columns>
    </layout>

    <layout name="document_virtual_navigation_listing">
      <templates>
        <template mode="any">/layouts/layout_listing_template.xhtml</template>
        <template mode="csv">
          /layouts/layout_listing_csv_template.xhtml
        </template>
        <template mode="pdf">
          /layouts/layout_listing_pdf_template.xhtml
        </template>
      </templates>
      <properties mode="any">
        <property name="showListingHeader">true</property>
        <property name="showRowEvenOddClass">true</property>
      </properties>
      <columns>

        <!-- BEGIN: added columns -->
        <column name="description" selectedByDefault="false">
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:description</property>
            <property name="label">description</property>
          </properties>
          <properties mode="edit_sort_infos">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <properties mode="edit_sort_infos_map">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <widget>listing_description</widget>
        </column>
        <!-- END: added columns -->

        <column>
          <properties mode="any">
            <property name="isListingSelectionBox">true</property>
            <property name="useFirstWidgetLabelAsColumnHeader">false</property>
            <property name="columnStyleClass">iconColumn</property>
          </properties>
          <properties mode="csv">
            <property name="isHidden">true</property>
          </properties>
          <properties mode="pdf">
            <property name="isHidden">true</property>
          </properties>
          <widget>listing_selection_box</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">false</property>
            <property name="columnStyleClass">iconColumn</property>
          </properties>
          <widget>listing_icon_type</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:title</property>
          </properties>
          <widget>listing_title_link</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="columnStyleClass">iconColumn</property>
          </properties>
          <properties mode="csv">
            <property name="isHidden">true</property>
          </properties>
          <properties mode="pdf">
            <property name="isHidden">true</property>
          </properties>
          <widget>listing_lock_icon</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:modified</property>
            <property name="defaultSortAscending">false</property>
          </properties>
          <widget>listing_modification_date</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:lastContributor</property>
          </properties>
          <widget>listing_last_contributor</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
          </properties>
          <widget>listing_version</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">
              ecm:currentLifeCycleState
            </property>
          </properties>
          <widget>listing_lifecycle</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="columnStyleClass">iconColumn</property>
          </properties>
          <properties mode="csv">
            <property name="isHidden">true</property>
          </properties>
          <properties mode="pdf">
            <property name="isHidden">true</property>
          </properties>
          <widget>listing_livedit_link</widget>
        </column>
      </columns>
    </layout>

    <layout name="document_virtual_navigation_listing_ajax">
      <templates>
        <template mode="any">
          /layouts/layout_listing_ajax_template.xhtml
        </template>
        <template mode="csv">
          /layouts/layout_listing_csv_template.xhtml
        </template>
        <template mode="pdf">
          /layouts/layout_listing_pdf_template.xhtml
        </template>
      </templates>
      <properties mode="any">
        <property name="showListingHeader">true</property>
        <property name="showRowEvenOddClass">true</property>
      </properties>
      <columns>

        <!-- BEGIN: added columns -->
        <column name="description" selectedByDefault="false">
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:description</property>
            <property name="label">description</property>
          </properties>
          <properties mode="edit_sort_infos">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <properties mode="edit_sort_infos_map">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <widget>listing_description</widget>
        </column>
        <!-- END: added columns -->

        <column>
          <properties mode="any">
            <property name="isListingSelectionBox">true</property>
            <property name="useFirstWidgetLabelAsColumnHeader">false</property>
            <property name="columnStyleClass">iconColumn</property>
          </properties>
          <properties mode="csv">
            <property name="isHidden">true</property>
          </properties>
          <properties mode="pdf">
            <property name="isHidden">true</property>
          </properties>
          <widget>listing_ajax_selection_box</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">false</property>
            <property name="columnStyleClass">iconColumn</property>
          </properties>
          <widget>listing_icon_type</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:title</property>
          </properties>
          <widget>listing_title_link</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="columnStyleClass">iconColumn</property>
          </properties>
          <properties mode="csv">
            <property name="isHidden">true</property>
          </properties>
          <widget>listing_lock_icon</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:modified</property>
          </properties>
          <widget>listing_modification_date</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:lastContributor</property>
          </properties>
          <widget>listing_last_contributor</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
          </properties>
          <widget>listing_version</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">
              ecm:currentLifeCycleState
            </property>
          </properties>
          <widget>listing_lifecycle</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="columnStyleClass">iconColumn</property>
          </properties>
          <properties mode="csv">
            <property name="isHidden">true</property>
          </properties>
          <properties mode="pdf">
            <property name="isHidden">true</property>
          </properties>
          <widget>listing_livedit_link</widget>
        </column>
      </columns>
    </layout>

    <layout name="document_listing_compact_2_columns">
      <templates>
        <template mode="any">/layouts/layout_listing_template.xhtml</template>
        <template mode="csv">
          /layouts/layout_listing_csv_template.xhtml
        </template>
        <template mode="pdf">
          /layouts/layout_listing_pdf_template.xhtml
        </template>
      </templates>
      <columns>

        <!-- BEGIN: added columns -->
        <column name="description" selectedByDefault="false">
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:description</property>
            <property name="label">description</property>
          </properties>
          <properties mode="edit_sort_infos">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <properties mode="edit_sort_infos_map">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <widget>listing_description</widget>
        </column>
        <!-- END: added columns -->

        <column alwaysSelected="true">
          <properties mode="any">
            <property name="columnStyleClass">iconColumn</property>
          </properties>
          <properties mode="csv">
            <property name="isHidden">true</property>
          </properties>
          <properties mode="pdf">
            <property name="isHidden">true</property>
          </properties>
          <widget>listing_selection_box_with_current_document</widget>
        </column>
        <column alwaysSelected="true">
          <properties mode="any">
            <property name="columnStyleClass">iconColumn</property>
          </properties>
          <widget>listing_icon_type</widget>
        </column>
        <column alwaysSelected="true">
          <widget>listing_title_link</widget>
          <widget>listing_modification_date</widget>
          <widget>listing_author</widget>
          <widget>listing_lifecycle</widget>
          <widget>listing_version</widget>
        </column>
      </columns>
    </layout>

    <layout name="document_listing_ajax_compact_2_columns">
      <templates>
        <template mode="any">
          /layouts/layout_listing_ajax_template.xhtml
        </template>
        <template mode="csv">
          /layouts/layout_listing_csv_template.xhtml
        </template>
        <template mode="pdf">
          /layouts/layout_listing_pdf_template.xhtml
        </template>
      </templates>
      <columns>

        <!-- BEGIN: added columns -->
        <column name="description" selectedByDefault="false">
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:description</property>
            <property name="label">description</property>
          </properties>
          <properties mode="edit_sort_infos">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <properties mode="edit_sort_infos_map">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <widget>listing_description</widget>
        </column>
        <!-- END: added columns -->

        <column alwaysSelected="true">
          <properties mode="any">
            <property name="columnStyleClass">iconColumn</property>
          </properties>
          <properties mode="csv">
            <property name="isHidden">true</property>
          </properties>
          <properties mode="pdf">
            <property name="isHidden">true</property>
          </properties>
          <widget>listing_ajax_selection_box_with_current_document</widget>
        </column>
        <column alwaysSelected="true">
          <properties mode="any">
            <property name="columnStyleClass">iconColumn</property>
          </properties>
          <widget>listing_icon_type</widget>
        </column>
        <column alwaysSelected="true">
          <widget>listing_title_link</widget>
          <widget>listing_modification_date</widget>
          <widget>listing_author</widget>
          <widget>listing_lifecycle</widget>
          <widget>listing_version</widget>
        </column>
      </columns>
    </layout>

    <layout name="document_virtual_navigation_listing_ajax_compact_2_columns">
      <templates>
        <template mode="any">
          /layouts/layout_listing_ajax_template.xhtml
        </template>
        <template mode="csv">
          /layouts/layout_listing_csv_template.xhtml
        </template>
        <template mode="pdf">
          /layouts/layout_listing_pdf_template.xhtml
        </template>
      </templates>
      <columns>

        <!-- BEGIN: added columns -->
        <column name="description" selectedByDefault="false">
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:description</property>
            <property name="label">description</property>
          </properties>
          <properties mode="edit_sort_infos">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <properties mode="edit_sort_infos_map">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <widget>listing_description</widget>
        </column>
        <!-- END: added columns -->

        <column alwaysSelected="true">
          <properties mode="any">
            <property name="columnStyleClass">iconColumn</property>
          </properties>
          <properties mode="csv">
            <property name="isHidden">true</property>
          </properties>
          <properties mode="pdf">
            <property name="isHidden">true</property>
          </properties>
          <widget>listing_ajax_selection_box</widget>
        </column>
        <column alwaysSelected="true">
          <properties mode="any">
            <property name="columnStyleClass">iconColumn</property>
          </properties>
          <widget>listing_icon_type</widget>
        </column>
        <column alwaysSelected="true">
          <widget>listing_title_link</widget>
          <widget>listing_modification_date</widget>
          <widget>listing_author</widget>
          <widget>listing_lifecycle</widget>
          <widget>listing_version</widget>
        </column>
      </columns>
    </layout>

    <layout name="document_listing_icon_2_columns">
      <templates>
        <template mode="any">/layouts/layout_listing_template.xhtml</template>
        <template mode="csv">
          /layouts/layout_listing_csv_template.xhtml
        </template>
        <template mode="pdf">
          /layouts/layout_listing_pdf_template.xhtml
        </template>
      </templates>
      <columns>

        <!-- BEGIN: added columns -->
        <column name="description" selectedByDefault="false">
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:description</property>
            <property name="label">description</property>
          </properties>
          <properties mode="edit_sort_infos">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <properties mode="edit_sort_infos_map">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <widget>listing_description</widget>
        </column>
        <!-- END: added columns -->

        <column alwaysSelected="true">
          <properties mode="csv">
            <property name="isHidden">true</property>
          </properties>
          <properties mode="pdf">
            <property name="isHidden">true</property>
          </properties>
          <widget>listing_selection_box_with_current_document</widget>
        </column>
        <column alwaysSelected="true">
          <widget>listing_big_icon_type_link</widget>
        </column>
        <column alwaysSelected="true">
          <widget>listing_title_link</widget>
        </column>
      </columns>
    </layout>

    <layout name="document_listing_ajax_icon_2_columns">
      <templates>
        <template mode="any">
          /layouts/layout_listing_ajax_template.xhtml
        </template>
        <template mode="csv">
          /layouts/layout_listing_csv_template.xhtml
        </template>
        <template mode="pdf">
          /layouts/layout_listing_pdf_template.xhtml
        </template>
      </templates>
      <columns>

        <!-- BEGIN: added columns -->
        <column name="description" selectedByDefault="false">
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:description</property>
            <property name="label">description</property>
          </properties>
          <properties mode="edit_sort_infos">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <properties mode="edit_sort_infos_map">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <widget>listing_description</widget>
        </column>
        <!-- END: added columns -->

        <column alwaysSelected="true">
          <properties mode="csv">
            <property name="isHidden">true</property>
          </properties>
          <properties mode="pdf">
            <property name="isHidden">true</property>
          </properties>
          <widget>listing_ajax_selection_box_with_current_document</widget>
        </column>
        <column alwaysSelected="true">
          <widget>listing_big_icon_type_link</widget>
        </column>
        <column alwaysSelected="true">
          <widget>listing_title_link</widget>
        </column>
      </columns>
    </layout>

    <layout name="document_virtual_navigation_listing_ajax_icon_2_columns">
      <templates>
        <template mode="any">
          /layouts/layout_listing_ajax_template.xhtml
        </template>
        <template mode="csv">
          /layouts/layout_listing_csv_template.xhtml
        </template>
        <template mode="pdf">
          /layouts/layout_listing_pdf_template.xhtml
        </template>
      </templates>
      <columns>

        <!-- BEGIN: added columns -->
        <column name="description" selectedByDefault="false">
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:description</property>
            <property name="label">description</property>
          </properties>
          <properties mode="edit_sort_infos">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <properties mode="edit_sort_infos_map">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <widget>listing_description</widget>
        </column>
        <!-- END: added columns -->

        <column alwaysSelected="true">
          <properties mode="csv">
            <property name="isHidden">true</property>
          </properties>
          <properties mode="pdf">
            <property name="isHidden">true</property>
          </properties>
          <widget>listing_ajax_selection_box</widget>
        </column>
        <column alwaysSelected="true">
          <widget>listing_big_icon_type_link</widget>
        </column>
        <column alwaysSelected="true">
          <widget>listing_title_link</widget>
        </column>
      </columns>
    </layout>

    <layout name="search_listing_ajax">
      <templates>
        <template mode="any">
          /layouts/layout_listing_ajax_template.xhtml
        </template>
        <template mode="csv">
          /layouts/layout_listing_csv_template.xhtml
        </template>
        <template mode="pdf">
          /layouts/layout_listing_pdf_template.xhtml
        </template>
        <template mode="edit_columns">
          /layouts/layout_column_selection_template.xhtml
        </template>
        <template mode="edit_sort_infos">
          /layouts/layout_sort_infos_template.xhtml
        </template>
        <template mode="edit_sort_infos_map">
          /layouts/layout_sort_infos_template.xhtml
        </template>
      </templates>
      <properties mode="any">
        <property name="showListingHeader">true</property>
        <property name="showRowEvenOddClass">true</property>
      </properties>
      <properties mode="edit_columns">
        <property name="availableElementsLabel">
          label.selection.availableColumns
        </property>
        <property name="selectedElementsLabel">
          label.selection.selectedColumns
        </property>
        <property name="selectedElementsHelp"></property>
        <property name="selectSize">10</property>
        <property name="required">true</property>
        <property name="displayAlwaysSelectedColumns">false</property>
      </properties>
      <properties mode="edit_sort_infos">
        <property name="newSortInfoTemplate">
          #{documentSearchActions.newSortInfo}
        </property>
        <property name="required">false</property>
      </properties>
      <properties mode="edit_sort_infos_map">
        <property name="newSortInfoTemplate">
          #{documentSearchActions.newSortInfoMap}
        </property>
        <property name="required">false</property>
      </properties>
      <columns>

        <!-- BEGIN: added columns -->
        <column name="description" selectedByDefault="false">
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:description</property>
            <property name="label">description</property>
          </properties>
          <properties mode="edit_sort_infos">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <properties mode="edit_sort_infos_map">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <widget>listing_description</widget>
        </column>
        <!-- END: added columns -->

        <column name="selection" alwaysSelected="true">
          <properties mode="any">
            <property name="isListingSelectionBox">true</property>
            <property name="useFirstWidgetLabelAsColumnHeader">false</property>
            <property name="columnStyleClass">iconColumn</property>
          </properties>
          <properties mode="csv">
            <property name="isHidden">true</property>
          </properties>
          <properties mode="pdf">
            <property name="isHidden">true</property>
          </properties>
          <widget>listing_ajax_selection_box</widget>
        </column>
        <column name="icon_type">
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">false</property>
            <property name="columnStyleClass">iconColumn</property>
            <property name="label">label.selection.column.icon_type</property>
          </properties>
          <widget>listing_icon_type</widget>
        </column>
        <column name="title_link">
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:title</property>
            <property name="label">label.selection.column.title_link</property>
          </properties>
          <properties mode="edit_sort_infos">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <properties mode="edit_sort_infos_map">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <widget>listing_title_link</widget>
        </column>
        <column name="lock">
          <properties mode="any">
            <property name="columnStyleClass">iconColumn</property>
            <property name="label">label.selection.column.lock</property>
          </properties>
          <properties mode="csv">
            <property name="isHidden">true</property>
          </properties>
          <properties mode="pdf">
            <property name="isHidden">true</property>
          </properties>
          <widget>listing_lock_icon</widget>
        </column>
        <column name="modification_date">
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:modified</property>
            <property name="label">label.content.header.modified</property>
          </properties>
          <properties mode="edit_sort_infos">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <properties mode="edit_sort_infos_map">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <widget>listing_modification_date</widget>
        </column>
        <column name="lastContributor">
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:lastContributor</property>
            <property name="label">
              label.content.header.lastContributor
            </property>
          </properties>
          <properties mode="edit_sort_infos">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <properties mode="edit_sort_infos_map">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <widget>listing_last_contributor</widget>
        </column>
        <column name="version">
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="label">label.version</property>
          </properties>
          <properties mode="edit_sort_infos">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <properties mode="edit_sort_infos_map">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <widget>listing_version</widget>
        </column>
        <column name="lifecycle">
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">
              ecm:currentLifeCycleState
            </property>
            <property name="label">
              label.content.header.currentLifecycleState
            </property>
          </properties>
          <properties mode="edit_sort_infos">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <properties mode="edit_sort_infos_map">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <widget>listing_lifecycle</widget>
        </column>
        <column name="livedit_link">
          <properties mode="any">
            <property name="columnStyleClass">iconColumn</property>
            <property name="label">
              label.selection.column.livedit_link
            </property>
          </properties>
          <properties mode="csv">
            <property name="isHidden">true</property>
          </properties>
          <properties mode="pdf">
            <property name="isHidden">true</property>
          </properties>
          <widget>listing_livedit_link</widget>
        </column>
        <column name="description" selectedByDefault="false">
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:description</property>
            <property name="label">description</property>
          </properties>
          <properties mode="edit_sort_infos">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <properties mode="edit_sort_infos_map">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <widget>listing_description</widget>
        </column>
        <column name="nature" selectedByDefault="false">
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:nature</property>
            <property name="label">label.dublincore.nature</property>
          </properties>
          <properties mode="edit_sort_infos">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <properties mode="edit_sort_infos_map">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <widget>listing_nature</widget>
        </column>
        <column name="subjects" selectedByDefault="false">
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="label">label.dublincore.subject</property>
          </properties>
          <widget>listing_subjects</widget>
        </column>
        <column name="rights" selectedByDefault="false">
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:rights</property>
            <property name="label">label.dublincore.rights</property>
          </properties>
          <properties mode="edit_sort_infos">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <properties mode="edit_sort_infos_map">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <widget>listing_rights</widget>
        </column>
        <column name="source" selectedByDefault="false">
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:source</property>
            <property name="label">label.dublincore.source</property>
          </properties>
          <properties mode="edit_sort_infos">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <properties mode="edit_sort_infos_map">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <widget>listing_source</widget>
        </column>
        <column name="coverage" selectedByDefault="false">
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:coverage</property>
            <property name="label">label.dublincore.coverage</property>
          </properties>
          <properties mode="edit_sort_infos">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <properties mode="edit_sort_infos_map">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <widget>listing_coverage</widget>
        </column>
        <column name="creation_date" selectedByDefault="false">
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:created</property>
            <property name="label">label.dublincore.created</property>
          </properties>
          <properties mode="edit_sort_infos">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <properties mode="edit_sort_infos_map">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <widget>listing_creation_date</widget>
        </column>
        <column name="format" selectedByDefault="false">
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:format</property>
            <property name="label">label.dublincore.format</property>
          </properties>
          <properties mode="edit_sort_infos">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <properties mode="edit_sort_infos_map">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <widget>listing_format</widget>
        </column>
        <column name="language" selectedByDefault="false">
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:language</property>
            <property name="label">label.dublincore.language</property>
          </properties>
          <properties mode="edit_sort_infos">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <properties mode="edit_sort_infos_map">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <widget>listing_language</widget>
        </column>
        <column name="expired_date" selectedByDefault="false">
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:expired</property>
            <property name="label">label.dublincore.expired</property>
          </properties>
          <properties mode="edit_sort_infos">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <properties mode="edit_sort_infos_map">
            <property name="showInSortInfoSelection">true</property>
          </properties>
          <widget>listing_expiration_date</widget>
        </column>
        <column name="contributors" selectedByDefault="false">
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="label">label.dublincore.contributors</property>
          </properties>
          <widget>listing_contributors</widget>
        </column>
      </columns>
    </layout>
  </extension>

</component>
1 votes

3 answers

959 views

ANSWER



You added this new column twice in layout “search_listing_ajax” (it was already there, i guess you copied/pasted it from there). So if you go to the “Advanced Search” page, you should see that the “Description” column can be selected twice in the “Search results” box.

You should remove the attribute selectedByDefault=“false”, that's why this column is not visible by default on other content views, where there's no UI to select alternative rows to display.

Please read documentation about this at http://doc.nuxeo.com/x/awc7 for more info.

Also note that non-ajax result listings are there for compatibility reasons and are not used anymore in default configuration. They should not be used by your application if you're migrating from 5.1 so you should not need to override them.

3 votes



Thanks. It works now.
05/26/2012

This also worked for me! Thank you so much.
08/28/2013


Hi,

The subject that you're looking for is Content View -> http://doc.nuxeo.com/display/NXDOC/Content+views The search result layout which is displayed by “Default Faceted Search” is implemented into this Nuxeo addon: https://github.com/nuxeo/nuxeo-platform-faceted-search and is called “document_virtual_navigation_listing_ajax”.

If you take a look at the Content View documentation, you'll see how to configure this result layout, override “document_virtual_navigation_listing_ajax” xml contrib and add your custom metadata column.

Hope it helps

3 votes



Thanks for the answer. I really don't want to disappoint you, but I still not understand the subject and not being able to accomplish it. Please guide me more.
05/16/2012

Hi

My answer below:)

05/18/2012


Here is the content view displaying your search results (it's in an xml file that we call contribution, and that we indicate into a manifest of custom project):

<extension target=“org.nuxeo.ecm.platform.ui.web.ContentViewService”

point="contentViews">

<contentView name="faceted_search_default">
  <title>label.faceted.search.default</title>
  <translateTitle>true</translateTitle>
  <emptySentence>label.content.empty.search</emptySentence>
  <translateEmptySentence>true</translateEmptySentence>

  <coreQueryPageProvider>
    <property name="coreSession">#{documentManager}</property>
    <whereClause docType="FacetedSearchDefault">
      <fixedPart>
        ecm:mixinType != 'HiddenInNavigation' AND ecm:mixinType !=
        'HiddenInFacetedSearch' AND ecm:isCheckedInVersion = 0 AND
        ecm:currentLifeCycleState != 'deleted'
      </fixedPart>
      <predicate parameter="ecm:fulltext" operator="FULLTEXT">
        <field schema="faceted_search_default" name="ecm_fulltext" />
      </predicate>
      <predicate parameter="dc:created" operator="BETWEEN">
        <field schema="faceted_search_default" name="dc_created_min" />
        <field schema="faceted_search_default" name="dc_created_max" />
      </predicate>
      <predicate parameter="dc:modified" operator="BETWEEN">
        <field schema="faceted_search_default" name="dc_modified_min" />
        <field schema="faceted_search_default" name="dc_modified_max" />
      </predicate>
      <predicate parameter="dc:creator" operator="IN">
        <field schema="faceted_search_default" name="dc_creator" />
      </predicate>
      <predicate parameter="dc:nature" operator="IN">
        <field schema="faceted_search_default" name="dc_nature" />
      </predicate>
      <predicate parameter="dc:coverage" operator="STARTSWITH">
        <field schema="faceted_search_default" name="dc_coverage" />
      </predicate>
      <predicate parameter="dc:subjects" operator="STARTSWITH">
        <field schema="faceted_search_default" name="dc_subjects" />
      </predicate>
      <predicate parameter="ecm:path" operator="STARTSWITH">
        <field schema="faceted_search_default" name="ecm_path" />
      </predicate>
    </whereClause>
    <sort column="dc:title" ascending="true" />
    <pageSize>20</pageSize>
  </coreQueryPageProvider>

  <searchLayout name="faceted_search_default" />

  <showPageSizeSelector>true</showPageSizeSelector>
  <useGlobalPageSize>true</useGlobalPageSize>
  <refresh>
    <event>documentChanged</event>
    <event>documentChildrenChanged</event>
  </refresh>
  <cacheKey>only_one_cache</cacheKey>
  <cacheSize>1</cacheSize>

  **<resultLayouts>
    <layout name="document_virtual_navigation_listing_ajax" title="document_listing"
      translateTitle="true" iconPath="/icons/document_listing_icon.png"
      showCSVExport="true" showSyndicationLinks="true" />
  </resultLayouts>**

  <selectionList>CURRENT_SELECTION</selectionList>
  <actions category="CURRENT_SELECTION_LIST" />

  <flags>
    <flag>FACETED_SEARCH</flag>
  </flags>
</contentView>

Now you see that in this contribution, a “result layout” is noticed: document_virtual_navigation_listing_ajax

This is the “layout” which is displaying your search result columns.

So in order to update these columns and to display what you want (like description), you have to override this “result layout”, Nuxeo will be noticed of this override after restarting.

For this “layout” we got this following contribution:

<extension target="org.nuxeo.ecm.platform.forms.layout.WebLayoutManager"
    point="widgets">
    <layout name="document_virtual_navigation_listing_ajax">
      <templates>
        <template mode="any">
          /layouts/layout_listing_ajax_template.xhtml
        </template>
        <template mode="csv">
          /layouts/layout_listing_csv_template.xhtml
        </template>
        <template mode="pdf">
          /layouts/layout_listing_pdf_template.xhtml
        </template>
      </templates>
      <properties mode="any">
        <property name="showListingHeader">true</property>
        <property name="showRowEvenOddClass">true</property>
      </properties>
      <columns>
        <column>
          <properties mode="any">
            <property name="isListingSelectionBox">true</property>
            <property name="useFirstWidgetLabelAsColumnHeader">false</property>
            <property name="columnStyleClass">iconColumn</property>
          </properties>
          <properties mode="csv">
            <property name="isHidden">true</property>
          </properties>
          <properties mode="pdf">
            <property name="isHidden">true</property>
          </properties>
          <widget>listing_ajax_selection_box</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">false</property>
            <property name="columnStyleClass">iconColumn</property>
          </properties>
          <widget>listing_icon_type</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:title</property>
          </properties>
          <widget>listing_title_link</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="columnStyleClass">iconColumn</property>
          </properties>
          <properties mode="csv">
            <property name="isHidden">true</property>
          </properties>
          <widget>listing_lock_icon</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:modified</property>
          </properties>
          <widget>listing_modification_date</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:lastContributor</property>
          </properties>
          <widget>listing_last_contributor</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
          </properties>
          <widget>listing_version</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">
              ecm:currentLifeCycleState
            </property>
          </properties>
          <widget>listing_lifecycle</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="columnStyleClass">iconColumn</property>
          </properties>
          <properties mode="csv">
            <property name="isHidden">true</property>
          </properties>
          <properties mode="pdf">
            <property name="isHidden">true</property>
          </properties>
          <widget>listing_livedit_link</widget>
        </column>
      </columns>
    </layout>
    </extension>

Solution:

Replace or add your custom column for displaying dublincore description of your document:

Copy the previous layout code, add it to a xml contribution in your custom project and add following column:

    <column name="description" selectedByDefault="false">
      <properties mode="any">
        <property name="useFirstWidgetLabelAsColumnHeader">true</property>
        <property name="sortPropertyName">dc:description</property>
        <property name="label">description</property>
      </properties>
      <properties mode="edit_sort_infos">
        <property name="showInSortInfoSelection">true</property>
      </properties>
      <properties mode="edit_sort_infos_map">
        <property name="showInSortInfoSelection">true</property>
      </properties>
      <widget>listing_description</widget>
    </column>

And restart your nuxeo server after putting your custom bundle in nxserver/bundles.

Hope it helps and don't hesitate to give your feedback on our documentation:)

2 votes



:( Very sorry. I can't. It's not work no matter what I tried. Can you just send me a complete configuration file ?
05/20/2012

Hi,

Please help us helping you and describe what you tried, what was the result, what you expected instead.

You've been given a quite detailed answer already, so saying that it does not work is just like saying that it does not print.

Thanks.

05/21/2012

I've update to question to include what I tried. Hope you can help. Thanks.
05/24/2012