Skip to content

Commit

Permalink
Merge pull request #3249 from OpenLiberty/staging
Browse files Browse the repository at this point in the history
Publish 23.0.0.8-beta post
  • Loading branch information
mbroz2 authored Aug 3, 2023
2 parents b22c4d4 + bf0a9da commit 6a7c08d
Show file tree
Hide file tree
Showing 2 changed files with 147 additions and 5 deletions.
12 changes: 7 additions & 5 deletions blog_tags.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,8 @@
"blog_tags": [
{
"name": "announcements",
"posts": ["23.0.0.7", "liberty-ide-tools-maven-gradle-plugins-for-java-developers",
"posts": ["23.0.0.8-beta",
"23.0.0.7", "liberty-ide-tools-maven-gradle-plugins-for-java-developers",
"23.0.0.7-beta", "23.0.0.6",
"23.0.0.6-beta", "23.0.0.5",
"23.0.0.5-beta", "23.0.0.4",
Expand Down Expand Up @@ -157,7 +158,7 @@
},
{
"name": "release",
"posts": ["23.0.0.7",
"posts": ["23.0.0.8-beta", "23.0.0.7",
"23.0.0.7-beta", "23.0.0.6",
"23.0.0.6-beta", "23.0.0.5",
"23.0.0.5-beta", "23.0.0.4",
Expand Down Expand Up @@ -206,7 +207,8 @@
},
{
"name": "beta",
"posts": ["23.0.0.7-beta", "23.0.0.6-beta",
"posts": ["23.0.0.8-beta",
"23.0.0.7-beta", "23.0.0.6-beta",
"23.0.0.5-beta", "23.0.0.4-beta",
"23.0.0.3-beta", "23.0.0.2-beta",
"instant-on-beta-update", "23.0.0.1-beta",
Expand Down Expand Up @@ -269,7 +271,7 @@
},
{
"name": "Spring",
"posts": ["running-spring-boot-3",
"posts": ["23.0.0.8-beta", "running-spring-boot-3",
"build-and-push-spring-boot-docker-images", "optimizing-spring-boot-apps-for-docker",
"creating-dual-layer-docker-images-for-spring-boot-apps", "liberty-spring-boot"]
},
Expand Down Expand Up @@ -318,7 +320,7 @@
},
{
"name": "Jakarta EE",
"posts": ["liberty-ide-tools-maven-gradle-plugins-for-java-developers",
"posts": ["23.0.0.8-beta", "liberty-ide-tools-maven-gradle-plugins-for-java-developers",
"23.0.0.7-beta", "23.0.0.6",
"rapid-startup-instanton", "kotlin-with-open-liberty",
"23.0.0.5", "23.0.0.5-beta",
Expand Down
140 changes: 140 additions & 0 deletions posts/2023-08-03-23.0.0.8-beta.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,140 @@
---
layout: post
title: "Spring Boot 3 support in Open Liberty 23.0.0.8-beta"
# Do NOT change the categories section
categories: blog
author_picture: https://avatars3.githubusercontent.com/mbroz2
author_github: https://github.com/mbroz2
seo-title: Spring Boot 3 support in Open Liberty 23.0.0.8-beta - OpenLiberty.io
seo-description: Open Liberty 23.0.0.8-beta introduces support for Spring Boot 3, so you can use Spring Boot 3.x function in your Liberty applications. This beta release also includes the very early preview of Jakarta Data.
blog_description: Open Liberty 23.0.0.8-beta introduces support for Spring Boot 3, so you can use Spring Boot 3.x function in your Liberty applications. This beta release also includes the very early preview of Jakarta Data.
open-graph-image: https://openliberty.io/img/twitter_card.jpg
open-graph-image-alt: Open Liberty Logo
---
= Spring Boot 3 support in Open Liberty 23.0.0.8-beta
Michal Broz <https://github.com/mbroz2>
:imagesdir: /
:url-prefix:
:url-about: /
//Blank line here is necessary before starting the body of the post.

Open Liberty 23.0.0.8-beta introduces support for Spring Boot 3, so you can use Spring Boot 3.x function in your Liberty applications. This beta release also includes the very early preview of Jakarta Data.

The link:{url-about}[Open Liberty] 23.0.0.8-beta includes the following beta features (along with link:{url-prefix}/docs/latest/reference/feature/feature-overview.html[all GA features]):

* <<sp3, Spring Boot 3.0 support>>
* <<data, Early preview of Jakarta Data>>

See also link:{url-prefix}/blog/?search=beta&key=tag[previous Open Liberty beta blog posts].

// // // // DO NOT MODIFY THIS COMMENT BLOCK <GHA-BLOG-TOPIC> // // // //
// Blog issue: https://github.com/OpenLiberty/open-liberty/issues/25679
// Contact/Reviewer: ReeceNana,hlhoots
// // // // // // // //
[#sp3]
== Spring Boot 3.0 support

The Liberty Spring Boot Support 3.0 feature provides more complete support for running a Spring Boot 3.0 application on Liberty. It also provides the capability to "thin" the application when you create applications in containers.

Prior releases of Liberty provided support for Spring Boot 1.5 and Spring Boot 2.0 applications. Liberty has also supported Spring Boot applications packaged as a WAR file, as demonstrated in link:https://openliberty.io/blog/2023/06/15/running-spring-boot-3.html[this recent blog post]. The Open Liberty 23.0.0.8-beta release enables you to deploy Spring Boot 3.x applications by enabling the `springboot-3.0` feature, with support for both JAR and WAR file types.

To run a Spring Boot 3.x application on Liberty, you must be running with Java 17 or higher. Additionally, if your application uses the link:/docs/latest/reference/feature/servlet.html[Jakarta Servlet] feature, it must be Jakarta Servet 6.0. Configure these features in the `server.xml` file, as shown in the following example:

[source,xml]
----
<features>
<feature>springboot-3.0</feature>
<feature>servlet-6.0</feature>
</features>
----

As with previous versions of the Spring Boot Support feature, Spring Boot application JAR files can be placed in the `/dropins/spring/` directory. Alternatively, specify the link:/docs/latest/reference/config/springBootApplication.html[Spring Boot configuration elements] in the `server.xml` file. For example:

[source,xml]
----
<springBootApplication id="spring-boot-app" location="spring-boot-app-0.1.0.jar" name="spring-boot-app" />
----

If you have used previous versions of the Spring Boot Support feature and are now migrating your application to use Spring Boot 3, note the following requirements:

* link:/docs/latest/reference/feature/webProfile-10.0.html[Jakarta EE 10 features] must be used.

* Security configuration requires in-application modifications. 
- link:https://spring.io/blog/2022/02/21/spring-security-without-the-websecurityconfigureradapter[Spring Security without the WebSecurityConfigurerAdapter]

- link:https://docs.spring.io/spring-security/reference/servlet/authorization/authorize-http-requests.html[Authorize HttpServletRequests]

* A new server template (`springBoot3`) is available.




// DO NOT MODIFY THIS LINE. </GHA-BLOG-TOPIC>


[#data]
== Early preview of Jakarta Data

The 23.0.0.8-beta release also includes a preview of Jakarta Data. More information is available in the link:{url-prefix}/blog/2023/07/11/23.0.0.7-beta.html[Jakarta Data beta 2 update in Open Liberty 23.0.0.7-beta] blog post.


[#run]
=== Try it now

To try out these features, update your build tools to pull the Open Liberty All Beta Features package instead of the main release. The beta works with Java SE 20, Java SE 17, Java SE 11, and Java SE 8.

If you're using link:{url-prefix}/guides/maven-intro.html[Maven], add the All Beta Features package to your `pom.xml` file:

[source,xml]
----
<plugin>
<groupId>io.openliberty.tools</groupId>
<artifactId>liberty-maven-plugin</artifactId>
<version>RELEASE</version>
<configuration>
<runtimeArtifact>
<groupId>io.openliberty.beta</groupId>
<artifactId>openliberty-runtime</artifactId>
<version>23.0.0.8-beta</version>
<type>zip</type>
</runtimeArtifact>
</configuration>
</plugin>
----

You must also add dependencies to your pom.xml file for the beta version of the APIs that are associated with the beta features that you want to try. For example, for Jakarta Data Beta 2, you would include:
[source,xml]
----
<dependency>
<groupId>jakarta.data</groupId>
<artifactId>jakarta-data-api</artifactId>
<version>1.0.0-b2</version>
</dependency>
----

Or for link:{url-prefix}/guides/gradle-intro.html[Gradle]:

[source,gradle]
----
dependencies {
libertyRuntime group: 'io.openliberty.beta', name: 'openliberty-runtime', version: '[23.0.0.8-beta,)'
}
----

Or if you're using link:{url-prefix}/docs/latest/container-images.html[container images]:

[source]
----
FROM icr.io/appcafe/open-liberty:beta
----

Or take a look at our link:{url-prefix}/downloads/#runtime_betas[Downloads page].

For more information on using a beta release, refer to the link:{url-prefix}docs/latest/installing-open-liberty-betas.html[Installing Open Liberty beta releases] documentation.

[#feedback]
== We welcome your feedback

Let us know what you think on link:https://groups.io/g/openliberty[our mailing list]. If you hit a problem, link:https://stackoverflow.com/questions/tagged/open-liberty[post a question on StackOverflow]. If you hit a bug, link:https://github.com/OpenLiberty/open-liberty/issues[please raise an issue].


0 comments on commit 6a7c08d

Please sign in to comment.