From d31011ca00d56be78995ceb5137370ade71eb214 Mon Sep 17 00:00:00 2001 From: Andreas Kohlbecker Date: Thu, 20 Jan 2022 12:25:20 +0100 Subject: [PATCH] documentation on setting up vaadin --- README.md | 19 +++++++++++++++++++ images/Vaadin-Plugin-for-Eclipse.png | Bin 0 -> 32025 bytes 2 files changed, 19 insertions(+) create mode 100644 images/Vaadin-Plugin-for-Eclipse.png diff --git a/README.md b/README.md index ab1809f4..2760089b 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,25 @@ +## Available UIs + +* http://localhost:8080/app/concept +* http://localhost:8080/app/distribution +* http://localhost:8080/app/account +* http://localhost:8080/app/registration ## Developer +### Eclipse IDE + +It is recommended to use the [Spring Tool Suite](https://spring.io/tools). + +Make sure you have the **Maven2Eclipse** plugin installed. + +In addition you will need the **Vaadin Eclipse Plugin** which can be installed via the Marketplace: + +![](images/Vaadin-Plugin-for-Eclipse.png) + +For working the the UI designs it is recommendet to install the Vaddin Designer for Vaadin 7. + + ### Configure vaadin UIs for a specific cdm data source On the fist application startup on a cdm data source the `eu.etaxonomy.cdm.addon.config.CdmVaadinConfiguration` will create a `vaadin-apps.properties` file in the cdm source specific configuration folder: `~/.cdmLibrary/remote-webapp/${cdm-source-bean-id}/` diff --git a/images/Vaadin-Plugin-for-Eclipse.png b/images/Vaadin-Plugin-for-Eclipse.png new file mode 100644 index 0000000000000000000000000000000000000000..ce47b1d3a22ccddb4a285ff658cc4bb49e2e5f36 GIT binary patch literal 32025 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