diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 7eae50f947..74861e5e9e 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -79,7 +79,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - java-version: ['11.x', '17.x', '21.x'] + java-version: ['17.x', '21.x'] fail-fast: false steps: - name: "checking out" @@ -111,19 +111,15 @@ jobs: strategy: matrix: node-version: ['20.x', '22.x', '24.x'] - java-version: ['11.x', '17.x', '21.x'] + java-version: ['17.x', '21.x'] # Reduce the combinations to reduce the total number of jobs exclude: - node-version: '20.x' java-version: '17.x' - node-version: '20.x' java-version: '21.x' - - node-version: '22.x' - java-version: '11.x' - node-version: '22.x' java-version: '21.x' - - node-version: '24.x' - java-version: '11.x' - node-version: '24.x' java-version: '17.x' fail-fast: false @@ -201,14 +197,14 @@ jobs: uses: actions/setup-java@v3 with: distribution: 'temurin' - java-version: '11.x' + java-version: '17.x' ############ # Publish ########## - name: Set up Maven Central Repository uses: actions/setup-java@v3 with: - java-version: '11' + java-version: '17' distribution: 'temurin' server-id: geosolutions server-username: MAVEN_USERNAME diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 4e3f2f5f5f..5672816beb 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -5,7 +5,7 @@ on: - master # using filter pattern: https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#filter-pattern-cheat-sheet - '[cC][0-9][0-9][0-9]-+**' # c123 or c123-something for custom branch - - '[0-9][0-9][0-9][0-9].[0-9][0-9].xx' # stable brances. E.g. 2021.01.xx + - '[0-9][0-9][0-9][0-9].[0-9][0-9].xx' # stable branches. E.g. 2021.01.xx - '[geonode]-[0-9].[0-9].x' # stable branches for GeoNode. E.g. geonode-4.4.x jobs: @@ -22,7 +22,7 @@ jobs: uses: actions/setup-java@v3 with: distribution: 'temurin' - java-version: '11.x' + java-version: '17.x' ############ # CACHING ########## diff --git a/.github/workflows/create_release.yml b/.github/workflows/create_release.yml index 09b8de786c..38212a8e9a 100644 --- a/.github/workflows/create_release.yml +++ b/.github/workflows/create_release.yml @@ -41,7 +41,7 @@ jobs: - name: "setting up Java" uses: actions/setup-java@v1 with: - java-version: '11.x' + java-version: '17.x' ############ # CACHING ########## diff --git a/.github/workflows/post_release.yml b/.github/workflows/post_release.yml index d6b564668b..d70bf51cc4 100644 --- a/.github/workflows/post_release.yml +++ b/.github/workflows/post_release.yml @@ -21,10 +21,10 @@ jobs: script: | core.setFailed('This workflow can not run on master branch') - uses: actions/checkout@v3 - - name: Set up JDK 11 + - name: Set up JDK 17 uses: actions/setup-java@v3 with: - java-version: '11.x' + java-version: '17.x' distribution: 'adopt' cache: maven diff --git a/.github/workflows/pre_release.yml b/.github/workflows/pre_release.yml index ca21e705e1..97b36e09ce 100644 --- a/.github/workflows/pre_release.yml +++ b/.github/workflows/pre_release.yml @@ -37,10 +37,10 @@ jobs: script: | core.setFailed('This workflow can not run on master branch') - uses: actions/checkout@v3 - - name: Set up JDK 11 + - name: Set up JDK 17 uses: actions/setup-java@v3 with: - java-version: '11.x' + java-version: '17.x' distribution: 'adopt' cache: maven diff --git a/binary/bin-war/pom.xml b/binary/bin-war/pom.xml index 72c10bbe1a..792ce108f2 100644 --- a/binary/bin-war/pom.xml +++ b/binary/bin-war/pom.xml @@ -14,7 +14,7 @@ http://www.geo-solutions.it UTF-8 - 9.0.116 + 11.0.22 ${mapstore2.version} diff --git a/binary/pom.xml b/binary/pom.xml index b39feebfb8..7f055ae24a 100644 --- a/binary/pom.xml +++ b/binary/pom.xml @@ -13,7 +13,7 @@ http://www.geo-solutions.it UTF-8 - 9.0.118 + 11.0.22 ${mapstore2.version} diff --git a/binary/tomcat/conf/web.xml b/binary/tomcat/conf/web.xml index b4fc5b61da..09d0d44fc4 100644 --- a/binary/tomcat/conf/web.xml +++ b/binary/tomcat/conf/web.xml @@ -15,11 +15,10 @@ See the License for the specific language governing permissions and limitations under the License. --> - + xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-app_6_0.xsd" + version="6.0"> diff --git a/java/services/pom.xml b/java/services/pom.xml index 5eae8354eb..0007b3dcdb 100644 --- a/java/services/pom.xml +++ b/java/services/pom.xml @@ -86,10 +86,9 @@ - - javax.servlet - javax.servlet-api + jakarta.servlet + jakarta.servlet-api @@ -143,8 +142,8 @@ 3.10.1 utf8 - 8 - 8 + 17 + 17 true UTF-8 - javax.servlet - javax.servlet-api + jakarta.servlet + jakarta.servlet-api - - net.sf.ehcache - ehcache-web - - - - commons-pool - commons-pool - - - javax.xml.ws - jaxws-api + jakarta.xml.ws + jakarta.xml.ws-api diff --git a/java/web/src/main/webapp/WEB-INF/configs-servlet.xml b/java/web/src/main/webapp/WEB-INF/configs-servlet.xml index 247b9626c2..dceda537f3 100644 --- a/java/web/src/main/webapp/WEB-INF/configs-servlet.xml +++ b/java/web/src/main/webapp/WEB-INF/configs-servlet.xml @@ -13,7 +13,7 @@ http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd"> - + diff --git a/java/web/src/main/webapp/WEB-INF/extensions-servlet.xml b/java/web/src/main/webapp/WEB-INF/extensions-servlet.xml index ab32ad3d73..b53c78d8c9 100644 --- a/java/web/src/main/webapp/WEB-INF/extensions-servlet.xml +++ b/java/web/src/main/webapp/WEB-INF/extensions-servlet.xml @@ -13,7 +13,7 @@ http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd"> - + diff --git a/java/web/src/main/webapp/WEB-INF/loadAssets-servlet.xml b/java/web/src/main/webapp/WEB-INF/loadAssets-servlet.xml index c1c1ab9387..a6e59eb1f1 100644 --- a/java/web/src/main/webapp/WEB-INF/loadAssets-servlet.xml +++ b/java/web/src/main/webapp/WEB-INF/loadAssets-servlet.xml @@ -13,7 +13,7 @@ http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd"> - + diff --git a/java/web/src/main/webapp/WEB-INF/web.xml b/java/web/src/main/webapp/WEB-INF/web.xml index 5da51060fc..b1b3ca7040 100644 --- a/java/web/src/main/webapp/WEB-INF/web.xml +++ b/java/web/src/main/webapp/WEB-INF/web.xml @@ -1,7 +1,7 @@ - + xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-app_6_0.xsd"> @@ -54,23 +54,6 @@ /rest/* - - - CompressionFilter - net.sf.ehcache.constructs.web.filter.GzipFilter - - - CompressionFilter - *.css - - - CompressionFilter - *.html - - - CompressionFilter - *.js - noCacheFilter diff --git a/pom.xml b/pom.xml index bb0c9934f5..7fe32f8f12 100644 --- a/pom.xml +++ b/pom.xml @@ -13,44 +13,39 @@ 8080 - 9.0.116 - 2.16.1 - 31.3 + 10.1.55 + 2.19.4 4.2.12 32.0.0-jre 2.6 3.4.0 - 5.3.39 - 5.7.13 + 7.0.8 + 7.1.0 3.2.2 2.14.0 1.2 - 1.5.4 - 2.0.4 - 4.5.13 - 3.0.1 - 2.3.1 + 6.0.0 + 4.0.3 2.4.2-geoserver 1.13 4.13.2 - 2.19.0 + 2.26.0 2.1.3 4.0.0 1.7.25 - 1.10.2 + 1.10.27 - 2.6-SNAPSHOT - 2.3.5 - 1.6-SNAPSHOT + 2.7-SNAPSHOT + 2.5-SNAPSHOT + 1.7-SNAPSHOT - 2.3 - 3.18.0 + 3.20.0 1.13.0 @@ -140,13 +135,6 @@ - - - org.apache.httpcomponents - httpclient - ${httpclient.version} - - junit junit @@ -160,24 +148,9 @@ test - javax.servlet - javax.servlet-api - ${javax.servlet-api.version} - - - net.sf.ehcache - ehcache-web - ${ehcache-web.version} - - - commons-pool - commons-pool - ${commons-pool.version} - - - commons-lang - commons-lang - ${commons-lang-version} + jakarta.servlet + jakarta.servlet-api + ${jakarta.servlet-api.version} org.apache.commons @@ -203,8 +176,8 @@ - javax.xml.ws - jaxws-api + jakarta.xml.ws + jakarta.xml.ws-api ${jaxws-api.version} @@ -223,6 +196,22 @@ javax.annotation javax.annotation-api + + jakarta.activation + jakarta.activation-api + + + jakarta.annotation + jakarta.annotation-api + + + jakarta.xml.bind + jakarta.xml.bind-api + + + jakarta.xml.soap + jakarta.xml.soap-api + @@ -264,7 +253,7 @@ - + it.geosolutions.geostore geostore-webapp @@ -359,6 +348,10 @@ org.apache.httpcomponents httpcore + + jakarta.xml.bind + jakarta.xml.bind-api + @@ -458,6 +451,30 @@ binary + + owasp + + + owasp + + + + + + org.owasp + dependency-check-maven + 12.2.2 + + + + check + + + + + + + @@ -498,19 +515,6 @@ - - org.owasp - dependency-check-maven - 9.0.9 - - true - - - - check - - - diff --git a/product/cargo/logging.properties b/product/cargo/logging.properties new file mode 100644 index 0000000000..0bee6b30e0 --- /dev/null +++ b/product/cargo/logging.properties @@ -0,0 +1,79 @@ +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +handlers = 1catalina.org.apache.juli.AsyncFileHandler, 2localhost.org.apache.juli.AsyncFileHandler, 3manager.org.apache.juli.AsyncFileHandler, 4host-manager.org.apache.juli.AsyncFileHandler, java.util.logging.ConsoleHandler + +.handlers = 1catalina.org.apache.juli.AsyncFileHandler, java.util.logging.ConsoleHandler + +############################################################ +# Handler specific properties. +# Describes specific configuration info for Handlers. +############################################################ + +1catalina.org.apache.juli.AsyncFileHandler.level = ALL +1catalina.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs +1catalina.org.apache.juli.AsyncFileHandler.prefix = catalina. +1catalina.org.apache.juli.AsyncFileHandler.maxDays = 90 +1catalina.org.apache.juli.AsyncFileHandler.encoding = UTF-8 + +2localhost.org.apache.juli.AsyncFileHandler.level = ALL +2localhost.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs +2localhost.org.apache.juli.AsyncFileHandler.prefix = localhost. +2localhost.org.apache.juli.AsyncFileHandler.maxDays = 90 +2localhost.org.apache.juli.AsyncFileHandler.encoding = UTF-8 + +3manager.org.apache.juli.AsyncFileHandler.level = ALL +3manager.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs +3manager.org.apache.juli.AsyncFileHandler.prefix = manager. +3manager.org.apache.juli.AsyncFileHandler.maxDays = 90 +3manager.org.apache.juli.AsyncFileHandler.encoding = UTF-8 + +4host-manager.org.apache.juli.AsyncFileHandler.level = ALL +4host-manager.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs +4host-manager.org.apache.juli.AsyncFileHandler.prefix = host-manager. +4host-manager.org.apache.juli.AsyncFileHandler.maxDays = 90 +4host-manager.org.apache.juli.AsyncFileHandler.encoding = UTF-8 + +java.util.logging.ConsoleHandler.level = ALL +java.util.logging.ConsoleHandler.formatter = org.apache.juli.OneLineFormatter +java.util.logging.ConsoleHandler.encoding = UTF-8 + + +############################################################ +# Facility specific properties. +# Provides extra control for each logger. +############################################################ + +org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = INFO +org.apache.catalina.core.ContainerBase.[Catalina].[localhost].handlers = 2localhost.org.apache.juli.AsyncFileHandler + +org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].level = INFO +org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].handlers = 3manager.org.apache.juli.AsyncFileHandler + +org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].level = INFO +org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].handlers = 4host-manager.org.apache.juli.AsyncFileHandler + +# For example, set the org.apache.catalina.util.LifecycleBase logger to log +# each component that extends LifecycleBase changing state: +#org.apache.catalina.util.LifecycleBase.level = FINE + +# To see debug messages for HTTP/2 handling, uncomment the following line: +#org.apache.coyote.http2.level = FINE + +# To see debug messages for WebSocket handling, uncomment the following line: +#org.apache.tomcat.websocket.level = FINE + +# MapStore debugging +#org.apache.catalina.core.StandardContext.level = FINE diff --git a/product/config/db/geostore-spring-security-db.xml b/product/config/db/geostore-spring-security-db.xml index 9964684ac3..58f2048f05 100644 --- a/product/config/db/geostore-spring-security-db.xml +++ b/product/config/db/geostore-spring-security-db.xml @@ -15,38 +15,54 @@ - + - + + + + + + + - + - + - + - + - - + diff --git a/product/config/ldap/geostore-spring-security-ldap.xml b/product/config/ldap/geostore-spring-security-ldap.xml index fc35f22c8d..b5d16f85a4 100644 --- a/product/config/ldap/geostore-spring-security-ldap.xml +++ b/product/config/ldap/geostore-spring-security-ldap.xml @@ -18,7 +18,7 @@ - + @@ -27,6 +27,7 @@ + @@ -37,13 +38,17 @@ class="it.geosolutions.geostore.services.rest.security.UserServiceAuthenticationProvider"> - - + + - - + + diff --git a/product/pom.xml b/product/pom.xml index c2b79945cc..2c2fdb6c1e 100644 --- a/product/pom.xml +++ b/product/pom.xml @@ -276,7 +276,7 @@ ${cargo.version} - tomcat9x + tomcat10x ${datadir.location} ${security.integration} @@ -297,6 +297,7 @@ ${backend.debug.args} --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED + -Djava.util.logging.config.file=${project.basedir}/cargo/logging.properties ${tomcat.port} low diff --git a/project/standard/templates/pom.xml b/project/standard/templates/pom.xml index 15be6ed37d..1273fcf3a8 100644 --- a/project/standard/templates/pom.xml +++ b/project/standard/templates/pom.xml @@ -12,27 +12,24 @@ UTF-8 8080 - 9.0.116 + 11.0.22 2.16.1 2.6 3.4.0 - 5.7.13 - 5.3.39 + 7.0.7 + 7.0.5 - 1.5.4 - 2.0.4 - 4.5.13 - 3.0.1 - 2.3.1 + 6.1.0 + 4.0.3 4.13.2 4.0.0 - 1.10.2 + 1.10.27 - 1.10-SNAPSHOT - 2.6-SNAPSHOT + 1.12-SNAPSHOT + 2.7-SNAPSHOT 1.6-SNAPSHOT - 2.3.5 + 2.5-SNAPSHOT diff --git a/project/standard/templates/web/pom.xml b/project/standard/templates/web/pom.xml index 18b238fd7f..53135dcaa9 100644 --- a/project/standard/templates/web/pom.xml +++ b/project/standard/templates/web/pom.xml @@ -61,13 +61,7 @@ javax.servlet javax.servlet-api - ${javax.servlet-api.version} - - - - net.sf.ehcache - ehcache-web - ${ehcache-web.version} + ${jakarta.servlet-api.version} @@ -494,13 +488,7 @@ javax.servlet javax.servlet-api - ${javax.servlet-api.version} - - - - net.sf.ehcache - ehcache-web - ${ehcache-web.version} + ${jakarta.servlet-api.version} diff --git a/project/standard/templates/web/src/main/webapp/WEB-INF/configs-servlet.xml b/project/standard/templates/web/src/main/webapp/WEB-INF/configs-servlet.xml index 9eddc99811..9cf39d6c41 100644 --- a/project/standard/templates/web/src/main/webapp/WEB-INF/configs-servlet.xml +++ b/project/standard/templates/web/src/main/webapp/WEB-INF/configs-servlet.xml @@ -12,7 +12,7 @@ http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd"> - + diff --git a/project/standard/templates/web/src/main/webapp/WEB-INF/extensions-servlet.xml b/project/standard/templates/web/src/main/webapp/WEB-INF/extensions-servlet.xml index 206c71b8f4..25d0d06bf9 100644 --- a/project/standard/templates/web/src/main/webapp/WEB-INF/extensions-servlet.xml +++ b/project/standard/templates/web/src/main/webapp/WEB-INF/extensions-servlet.xml @@ -12,7 +12,7 @@ http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd"> - + diff --git a/project/standard/templates/web/src/main/webapp/WEB-INF/loadAssets-servlet.xml b/project/standard/templates/web/src/main/webapp/WEB-INF/loadAssets-servlet.xml index 28d407bae1..220ee5b9e5 100644 --- a/project/standard/templates/web/src/main/webapp/WEB-INF/loadAssets-servlet.xml +++ b/project/standard/templates/web/src/main/webapp/WEB-INF/loadAssets-servlet.xml @@ -12,7 +12,7 @@ http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd"> - + diff --git a/project/standard/templates/web/src/main/webapp/WEB-INF/web.xml b/project/standard/templates/web/src/main/webapp/WEB-INF/web.xml index 03b4a380c0..869be321bf 100644 --- a/project/standard/templates/web/src/main/webapp/WEB-INF/web.xml +++ b/project/standard/templates/web/src/main/webapp/WEB-INF/web.xml @@ -1,7 +1,7 @@ - + xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/web-app_6_0.xsd"> @@ -54,24 +54,6 @@ /rest/* - - - CompressionFilter - net.sf.ehcache.constructs.web.filter.GzipFilter - - - CompressionFilter - *.css - - - CompressionFilter - *.html - - - CompressionFilter - *.js - - noCacheFilter diff --git a/web/src/config/db/geostore-spring-security-db.xml b/web/src/config/db/geostore-spring-security-db.xml index 994fb4ed9a..926b19ca8a 100644 --- a/web/src/config/db/geostore-spring-security-db.xml +++ b/web/src/config/db/geostore-spring-security-db.xml @@ -15,37 +15,54 @@ - + - + + + + + + + - + - + - + - + - + diff --git a/web/src/config/ldap/geostore-spring-security-ldap.xml b/web/src/config/ldap/geostore-spring-security-ldap.xml index ff7e73f22a..e158080862 100644 --- a/web/src/config/ldap/geostore-spring-security-ldap.xml +++ b/web/src/config/ldap/geostore-spring-security-ldap.xml @@ -18,7 +18,7 @@ - + @@ -27,6 +27,7 @@ + @@ -37,13 +38,17 @@ class="it.geosolutions.geostore.services.rest.security.UserServiceAuthenticationProvider"> - - + + - - + + @@ -108,9 +113,9 @@ - - - + + + +