FileUploadField

Компонент FileUploadField позволяет загружать файл и сохранять его в атрибут сущности как байтовый массив.

Компонент может содержать заголовок, ссылку на загруженный файл и кнопку загрузки. При нажатии на кнопку отображается стандартное для операционной системы окно, в котором можно выбрать файл.

file upload field

XML-имя компонента: fileUpload.

Основы

В приведенном ниже примере атрибут document сущности Person имеет тип байтового массива.

@JmixEntity
@Table(name = "UIEX1_PERSON")
@Entity(name = "uiex1_Person")
public class Person {

    /* other attributes */

    @Column(name = "DOCUMENT")
    private byte[] document;
<data>
    <instance id="personDc"
              class="ui.ex1.entity.Person">
        <fetchPlan extends="_base"/>
        <loader/>
    </instance>
</data>
<layout spacing="true">
    <form id="form" dataContainer="personDc">
        <column width="350px">
            <textField id="nameField"
                       property="name"/>

            <fileUpload id="documentField"
                        showFileName="true"
                        property="document" />
        </column>
    </form>
</layout>

Чтобы сохранить файл в файловое хранилище и связать его с атрибутом сущности как объект FileRef, используйте компонент FileStorageUploadField.

Функциональность

  • Атрибуты - FileUploadField имеет такие же атрибуты, как и компонент FileStorageUploadField, кроме fileStorage и fileStoragePutMode.

  • Методы - FileUploadField имеет такие же методы, как и компонент FileStorageUploadField, кроме getFileId().

  • Слушатели - FileUploadField имеет такие же слушатели, как и компонент FileStorageUploadField.