Can I deploy a spring-boot 2.0 WAR on a Tomcat 8.0.x? - spring-boot

spring-boot 2.0 has been available for a week now. The blog posts mention that there's now a Tomcat 8.5 baseline for embedded tomcat.
Does that also mean I need to have a Tomcat 8.5 if I use WAR deployment of my spring-boot 2.0 application, or would a Tomcat 8.0.x still work?

The official Spring Boot 2.0.0 documentation points to Tomcat 8.5 as the baseline version for embedded servers.
Spring Framework 5.0 itself requires Servlet 3.1+ containers and Tomcat 8.5+ for both embedded and war deployments.
Although deploying Spring MVC applications to a Tomcat 8.0.x server might still work, it won't be officially supported by Spring Framework nor Spring Boot.

Related

Are Spring boot 2.2.x apps deployable to Servlet 3.0 containers

I didn't find enough documentation on spring-boot and Servlet Container compatability. What should be the minimum Servlet specification implementation required for deploying Spring-boot 2.2.x apps?
as written in the documentation of Spring boot 2.2.0.RELEASE on page 4-5.
'You can also deploy Spring Boot applications to any Servlet 3.1+ compatible container.'
https://docs.spring.io/spring-boot/docs/2.2.0.RELEASE/reference/pdf/spring-boot-reference.pdf

How to deploy Spring Cloud Gateway 2.1 on Jboss or Tomcat?

I want to a deploy Spring Cloud Gateway but it is built on Spring Framework 5, Project Reactor.
Can I create a WAR file and deploy it on a traditional application server such as Jboss or Tomcat.
The Spring documentation in this page says it is possible.
Spring WebFlux is supported on Tomcat, Jetty, Servlet 3.1+ containers
Note:
this is Spring Cloud Gateway project link
https://spring.io/projects/spring-cloud-gateway
I don't think this is possible, as Spring Cloud Gateway is itself a Spring Boot WebFlux application and this use case is only supported with embedded servers, as mentioned in the Spring Boot reference documentation.

Is it possible to run Spring boot 2.x on Jboss EAP 6.4.x?

Is it possible to run Spring boot 2.x on Jboss EAP 6.4.x?
After deploying I can't reach the service.
I get 404 when trying to reach the service.
Thanks in advance!
I have already answer to my question.
You can't use Spring boot 2 with Jboss 6.x because Spring Boot is build on Spring 5 and Spring 5 does not support Servlet 3.0 which is used in Jboss 6.x.
Spring 5 supports Servlet 3.1 and above

Tomcat 7 deployment issue for Spring boot application

I have created an application on spring boot using JPA and JDK 7 but I am unable to deploy this to Tomcat 7. Does tomcat 7 support Spring boot 2.0.5.RELEASE version and the associated jar for JPA/Hibernate.
Spring Boot 2.0, requires a Servlet 3.1 container. Tomcat 7 is a Servlet 3.0 container.
So it wont work.

Spring webflux on tomcat

I just created a new application using Spring boot 2 M7 and I'm using spring-webflux.
I built the application as an autoexecutable war that I can start in dev with java -jar app.war and also on a standalone tomcat server for UAT purpose.
In the web reactive reference doc, I read
To deploy as a WAR to a Servlet 3.1+ container, wrap HttpHandler with ServletHttpHandlerAdapter and register that as a Servlet. This can be automated through the use of AbstractReactiveWebInitializer.
Baeldung site also wrote about it and they describe a procedure to register a servlet that wrap the router for a standalone environment.
Using Spring boot tomcat starter, I didn't need to do anything : no code about booting the server necessary ; the app starts using the embedded server. In debug I saw NIO access so all seems fine.
I didn't try yet but what will happen on a standalone tomcat using Spring boot tomcat starter and webflux starter ? Is spring boot take care of everything (embbeded and standalone tomcat) ? how does it work ?

Resources