Интеграция дополнений Vaadin

В Jmix-приложениях можно использовать любые сторонние дополнения Vaadin, расположенные в Vaadin Directory или в любом другом репозитории. Пример ниже демонстрирует интеграцию дополнения Pdf Viewer.

Чтобы включить дополнение Vaadin в ваше приложение, добавьте maven-репозиторий дополнений Vaadin и зависимость выбранного дополнения в build.gradle проекта:

build.gradle
repositories {
    maven {
        url 'https://maven.vaadin.com/vaadin-addons'
    }
}

dependencies {
    implementation 'org.vaadin.addons.componentfactory:vcf-pdf-viewer:3.0.0'
}

После этого вы можете использовать компоненты дополнения программно, например:

@Autowired
private Resources resources;

@Subscribe
public void onInit(final InitEvent event) {
    PdfViewer pdfViewer = new PdfViewer();
    pdfViewer.setSizeFull();

    StreamResource resource = new StreamResource("example.pdf", () ->
            resources.getResourceAsStream("META-INF/resources/pdf/example.pdf"));
    pdfViewer.setSrc(resource);

    getContent().add(pdfViewer);
}
pdf viewer
Figure 1. PdfViewer отображает PDF-файл из ресурсов