Unable to update spring boot from 1.4.7 to 1.5.0

Hi,

I’m in the process of migrating our platform from Vaadin 7.7.10 with Spring Boot 1.4.7 to 8.0.0 and 1.5.x. I first tried updating Spring Boot and I had this problem:

Java.lang.IllegalStateException: ApplicationEventMulticaster not initialized - call 'refresh' before multicasting events via the context: org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@27b49ca5: startup date [Wed Feb 07 23:28:51 CET 2018]
; root of context hierarchy

Checking the complete trace, I found this:


Caused by: java.lang.IllegalStateException: Failed to introspect annotated methods on class org.vaadin.spring.boot.config.VaadinServletConfiguration
...
...
...
Caused by: java.lang.ClassNotFoundException: org.springframework.boot.context.embedded.ServletRegistrationBean

We’re still using org.vaadin.spring. I don’t know if that component is still needed or if I should m

Vaadin 8.x should work with Spring Boot 1.5.x ok, for example in our Bakery demo app we use Spring Boot 1.5.4. My first advice for you is to check that you have upgraded the Spring add-on to 2.1.x.

Yes, we are on the correct track. It is important to upgrade the add-ons. In your case Vaadin4Spring, you need version 0.0.7. Cross check the compatibilities of your other add-ons in Directory, and upgrade the ones you need.

Hi Tatu,

thanks for you answer. We’re using the Vaadin4Spring add-on (which is at 0.0.5). Only updating Spring Boot to 1.5.0 triggers the error.

I believe that probably the Vaadin4Spring is too old (correct me if I’m wrong), but I did not expect that the upgrade of SB could break the build. I was expecting problems with Vaadin 8.0.

Do you think it’d better to migrate from Vaadin4Spring to the Spring add-on (which is currently at 2.1.x) than try to fix the build with the Vaadin4Spring?

Thanks,

Gustau

Thanks for your answer. I’ve checked my pom and we’re using vaadin-spring:

         <dependency>
             <groupId>org.vaadin.spring<groupId>
             <artifactId>vaadin-spring</artifactId>
             <version>0.0.5.RELEASE</version>
         </dependency>

The last version is 0.0.5-RELEASE. Also, I think that the
only symbol
we use a few symbols from that artifact, like
SpringAwareVaadinServlet
,
@VaadinView
and
@VaadinUI
, which are provided by the vaadin-spring artifact. I’m not sure if I can drop it if there’s another artifact I can use to move forward.

Any idea?

Thanks

Also, I tried updating and cleaning the pom files. Once I managed that I updated from Spring Boot 1.4.7 to 1.5.x. When I do that it fails, and think the error comes from this:

Caused by: java.lang.ClassNotFoundException: org.springframework.boot.context.embedded.ServletRegistrationBean

Any idea would be really appreciated.

G.