Внимание! В данной статье содержится зашкаливающее количество волшебства, а также отсутствует логика и здравый смысл. По окончанию прочтения данной статьи вам будет присвоен титул Великого Шамана. Добро пожаловать под кат, юный хобитс…

Для начала создадим проект Spring Boot + Vaadin. Для этого воспользуемся сервисом start.spring.io:

1

Выбираем Vaadin, настраиваем поля и нажимаем на кнопку Generate Project. Импортируем проект в IDEA. Проект должен выглядеть вот таким образом:

1

Заходим в pom.xml файл и видим следующее:

Нахрен сносим вот это:

Вместо этого вставляем другие зависимости на это же место:

Давайте добавим еще vaadin-charts для тестирования компилирования WidgetSet:

Добавим щепотку репозиториев:

Далее, добавим vaadin maven plugin:

Теперь обновляем наш проект, нажав на специальную кнопку:

1

Вот список зависимостей, который должен быть у вас:

1

Далее, создадим папки в ресурсах: springvaadin.widgetset и создадим в нем файл WidgetSet.gwt.xml:

1

Заметили что-то красное? Плевать! Идем дальше.

Находим в ресурсах файл application.properties и пишем туда следующее:

Всё! Конфигурирование закончено. Запускаем maven install (Внимание! maven install это не тоже самое, что и maven install:install):

1

Через несколько минут скомпилируется WidgetSet и появятся client-side файлы в папке webapp/VAADIN/widgetsets.

Создаем тестовую страничку:

Запускаем Spring Boot запускатор и радуемся пустому графику:

1

Получилось так же? Супер, цель достигнута. Нет? Сносим всё к чертям и делаем заново.

Vaadin 7.5 + Spring Boot + компилирование WidgetSet (Maven)

2 thoughts on “Vaadin 7.5 + Spring Boot + компилирование WidgetSet (Maven)

  • 01.04.2016 на 18:52
    Постоянная ссылка

    хорошая вводная, спасибо
    Использую еще spring-boot-starter-web в проекте
    выскакивает Failed to execute goal org.springframework.boot:spring-boot-maven-plugin:1.3.3.RELEASE:run (default-cli) on project people: An exception occurred while running. null: InvocationTargetException: Unable to start embedded container; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘jettyEmbeddedServletContainerFactory’ defined in class path resource [org/springframework/boot/autoconfigure/web/EmbeddedServletContainerAutoConfiguration$EmbeddedJetty.class]: Initialization of bean failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘org.springframework.boot.autoconfigure.web.ErrorMvcAutoConfiguration': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private org.springframework.boot.autoconfigure.web.ServerProperties org.springframework.boot.autoconfigure.web.ErrorMvcAutoConfiguration.properties; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘serverProperties’ defined in class path resource [org/springframework/boot/autoconfigure/web/ServerPropertiesAutoConfiguration.class]: Initialization of bean failed; nested exception is java.lang.NoClassDefFoundError: javax/validation/ParameterNameProvider: javax.validation.ParameterNameProvider -> [Help 1]

    ставлю джетти в

    org.springframework.boot
    spring-boot-starter-jetty

    тогда другие бины мвц не создаются.
    Буду рад если сможете что подсказать.
    Спасибо еще раз

    Ответить
    • 26.04.2016 на 13:45
      Постоянная ссылка

      Здравствуйте, Григорий!

      Похоже, что проблема с неправильной конфигурацией проекта. Попробуйте пересоздать свой проект через замечательный сервис http://start.spring.io

      Ответить

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">