This is an automated email from the ASF dual-hosted git repository.

kusal pushed a commit to branch WW-5533-jee11-supp
in repository https://gitbox.apache.org/repos/asf/struts.git

commit b247751fbbcfd29551e83682385b90724a14ca7e
Author: Kusal Kithul-Godage <g...@kusal.io>
AuthorDate: Mon Feb 24 21:29:14 2025 +1100

    WW-5533 Add compilation support for Jakarta EE 11
---
 .github/workflows/maven.yml                             | 17 ++++++++++++-----
 .../multipart/AbstractMultiPartRequestTest.java         |  2 +-
 .../main/java/org/apache/tiles/el/ScopeELResolver.java  |  2 +-
 .../org/apache/tiles/el/TilesContextBeanELResolver.java |  2 +-
 .../org/apache/tiles/el/TilesContextELResolver.java     |  2 +-
 pom.xml                                                 |  7 +++++++
 6 files changed, 23 insertions(+), 9 deletions(-)

diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml
index 1a7ffde46..a9df53c26 100644
--- a/.github/workflows/maven.yml
+++ b/.github/workflows/maven.yml
@@ -30,18 +30,25 @@ env:
 
 jobs:
   build:
-    name: Build and Test
+    name: Build and Test${{ matrix.profile == '-Pjakartaee11' && ' with 
Jakarta EE 11' || matrix.profile }}
     runs-on: ubuntu-latest
     strategy:
       matrix:
-        java: [ '17', '21' ]
+        include:
+          - java: '17'
+            profile: ''
+          - java: '21'
+            profile: ''
+          - java: '21'
+            profile: '-Pjakartaee11'
     steps:
       - name: Checkout code
         uses: actions/checkout@v4
-      - uses: actions/setup-java@v4
+      - name: Setup Java ${{ matrix.java }}
+        uses: actions/setup-java@v4
         with:
           distribution: temurin
           java-version: ${{ matrix.java }}
           cache: 'maven'
-      - name: Build with Maven on Java ${{ matrix.java }}
-        run: mvn -B -V -DskipAssembly verify --no-transfer-progress
+      - name: Build with Maven on Java ${{ matrix.java }}${{ matrix.profile == 
'-Pjakartaee11' && ' (Jakarta EE 11)' || matrix.profile }}
+        run: mvn -B -V -DskipAssembly verify ${{ matrix.profile }} 
--no-transfer-progress
diff --git 
a/core/src/test/java/org/apache/struts2/dispatcher/multipart/AbstractMultiPartRequestTest.java
 
b/core/src/test/java/org/apache/struts2/dispatcher/multipart/AbstractMultiPartRequestTest.java
index 22625cdf9..1f56b4435 100644
--- 
a/core/src/test/java/org/apache/struts2/dispatcher/multipart/AbstractMultiPartRequestTest.java
+++ 
b/core/src/test/java/org/apache/struts2/dispatcher/multipart/AbstractMultiPartRequestTest.java
@@ -417,7 +417,7 @@ abstract class AbstractMultiPartRequestTest {
         
assertThat(JakartaServletDiskFileUpload.isMultipartContent(mockRequest)).isTrue();
 
         // when
-        mockRequest.setCharacterEncoding(null);
+        mockRequest.setCharacterEncoding((String) null);
         multiPart.setDefaultEncoding(StandardCharsets.ISO_8859_1.name());
         multiPart.parse(mockRequest, tempDir);
 
diff --git 
a/plugins/tiles/src/main/java/org/apache/tiles/el/ScopeELResolver.java 
b/plugins/tiles/src/main/java/org/apache/tiles/el/ScopeELResolver.java
index bb34179ba..9b83611a6 100644
--- a/plugins/tiles/src/main/java/org/apache/tiles/el/ScopeELResolver.java
+++ b/plugins/tiles/src/main/java/org/apache/tiles/el/ScopeELResolver.java
@@ -57,7 +57,7 @@ public class ScopeELResolver extends ELResolver {
     /**
      * {@inheritDoc}
      */
-    @Override
+    // @Override
     public Iterator<FeatureDescriptor> getFeatureDescriptors(ELContext 
context, Object base) {
         if (base != null) {
             return Collections.emptyIterator();
diff --git 
a/plugins/tiles/src/main/java/org/apache/tiles/el/TilesContextBeanELResolver.java
 
b/plugins/tiles/src/main/java/org/apache/tiles/el/TilesContextBeanELResolver.java
index 8412b0574..e833b1100 100644
--- 
a/plugins/tiles/src/main/java/org/apache/tiles/el/TilesContextBeanELResolver.java
+++ 
b/plugins/tiles/src/main/java/org/apache/tiles/el/TilesContextBeanELResolver.java
@@ -47,7 +47,7 @@ public class TilesContextBeanELResolver extends ELResolver {
     }
 
     /** {@inheritDoc} */
-    @Override
+    // @Override
     public Iterator<FeatureDescriptor> getFeatureDescriptors(ELContext 
context, Object base) {
         List<FeatureDescriptor> list = new ArrayList<>();
 
diff --git 
a/plugins/tiles/src/main/java/org/apache/tiles/el/TilesContextELResolver.java 
b/plugins/tiles/src/main/java/org/apache/tiles/el/TilesContextELResolver.java
index 3fc6738b6..1723f9d40 100644
--- 
a/plugins/tiles/src/main/java/org/apache/tiles/el/TilesContextELResolver.java
+++ 
b/plugins/tiles/src/main/java/org/apache/tiles/el/TilesContextELResolver.java
@@ -70,7 +70,7 @@ public class TilesContextELResolver extends ELResolver {
     /**
      * {@inheritDoc}
      */
-    @Override
+    // @Override
     public Iterator<FeatureDescriptor> getFeatureDescriptors(ELContext context,
                                                              Object base) {
         // only resolve at the root of the context
diff --git a/pom.xml b/pom.xml
index 4893b476c..fcd067a01 100644
--- a/pom.xml
+++ b/pom.xml
@@ -147,6 +147,13 @@
                 <module>assembly</module>
             </modules>
         </profile>
+        <profile>
+            <id>jakartaee11</id>
+            <properties>
+                <jakarta-ee.version>11.0.0-M5</jakarta-ee.version>
+                <spring.version>7.0.0-M2</spring.version>
+            </properties>
+        </profile>
         <profile>
             <id>dependency-check</id>
             <build>

Reply via email to