A.5. metadata.xml

Файлы данного типа используются для регистрации неперсистентных сущностей и присвоения мета-аннотаций, см. Metadata Framework.

Схема XML доступна по адресу http://schemas.haulmont.com/cuba/6.1/metadata.xsd.

Набор файлов metadata.xml, включая определенные в базовых проектах, задается в свойстве приложения cuba.metadataConfig.

Рассмотрим структуру файла.

metadata - корневой элемент.

Элементы metadata:

  • metadata-model - описатель метамодели проекта.

    Атрибуты metadata-model:

    • root-package - корневой пакет проекта.

      Элементы metadata-model:

    • class - класс неперсистентной сущности.

  • annotations - корень элементов присвоения мета-аннотаций сущностей.

    Элементы annotations:

    • entity - элемент сущности, которой присваиваются мета-аннотации.

      Атрибуты entity:

      • class - класс сущности.

        Элементы entity:

      • annotation - элемент мета-аннотации.

        Атрибуты annotation:

        • name - имя мета-аннотации.

        • value - значение мета-аннотации.

Пример:

<metadata xmlns="http://schemas.haulmont.com/cuba/metadata.xsd">

  <metadata-model root-package="com.sample.sales">
      <class>com.sample.sales.entity.SomeTransientEntity</class>
      <class>com.sample.sales.entity.OtherTransientEntity</class>
  </metadata-model>

  <annotations>
      <entity class="com.haulmont.cuba.security.entity.User">
          <annotation name="com.haulmont.cuba.core.entity.annotation.TrackEditScreenHistory"
                      value="true"/>
          <annotation name="com.haulmont.cuba.core.entity.annotation.EnableRestore"
                      value="true"/>
      </entity>
  </annotations>

</metadata>