diff --git a/pom.xml b/pom.xml
index 93367cd1430..e0972d757b7 100644
--- a/pom.xml
+++ b/pom.xml
@@ -5,7 +5,7 @@
org.springframework.boot
spring-boot-starter-parent
- 2.5.13
+ 2.7.16
@@ -106,6 +106,13 @@
com.querydsl
querydsl-mongodb
+
+
+
+ mongo-java-driver
+ org.mongodb
+
+
@@ -141,6 +148,13 @@
de.flapdoodle.embed
de.flapdoodle.embed.mongo
+ 4.9.2
+ test
+
+
+ de.flapdoodle.embed
+ de.flapdoodle.embed.mongo.spring27x
+ 4.9.2
test
@@ -181,7 +195,7 @@
org.javers
javers-spring-boot-starter-mongo
- 6.5.3
+ 6.14.0
org.jsoup
@@ -298,7 +312,7 @@
org.springframework.security.oauth.boot
spring-security-oauth2-autoconfigure
- 2.5.13
+ 2.6.8
org.zalando
diff --git a/src/main/java/eu/dzhw/fdz/metadatamanagement/filemanagement/rest/FileResource.java b/src/main/java/eu/dzhw/fdz/metadatamanagement/filemanagement/rest/FileResource.java
index acf47964dfc..60e5daf2847 100644
--- a/src/main/java/eu/dzhw/fdz/metadatamanagement/filemanagement/rest/FileResource.java
+++ b/src/main/java/eu/dzhw/fdz/metadatamanagement/filemanagement/rest/FileResource.java
@@ -1,6 +1,7 @@
package eu.dzhw.fdz.metadatamanagement.filemanagement.rest;
import java.io.IOException;
+import java.net.URLDecoder;
import java.util.concurrent.TimeUnit;
import javax.servlet.http.HttpServletRequest;
@@ -39,7 +40,7 @@ public class FileResource {
public ResponseEntity> downloadFile(HttpServletRequest request) throws IOException {
String completePath =
(String) request.getAttribute(HandlerMapping.PATH_WITHIN_HANDLER_MAPPING_ATTRIBUTE);
- String fileName = completePath.replaceFirst("/public/files", "");
+ String fileName = URLDecoder.decode(completePath.replaceFirst("/public/files", ""), "UTF-8");
// find file in grid fs / mongo db
GridFsResource gridFsFile = this.fileService.findFile(fileName);
diff --git a/src/main/java/eu/dzhw/fdz/metadatamanagement/searchmanagement/rest/SearchResource.java b/src/main/java/eu/dzhw/fdz/metadatamanagement/searchmanagement/rest/SearchResource.java
index aa5988cc973..e2a979c97c3 100644
--- a/src/main/java/eu/dzhw/fdz/metadatamanagement/searchmanagement/rest/SearchResource.java
+++ b/src/main/java/eu/dzhw/fdz/metadatamanagement/searchmanagement/rest/SearchResource.java
@@ -117,7 +117,7 @@ public ResponseEntity search(@RequestBody(required = false) String body,
(String) request.getAttribute(HandlerMapping.PATH_WITHIN_HANDLER_MAPPING_ATTRIBUTE);
String queryString = request.getQueryString();
String path = completePath.replaceFirst("/api/search", "");
- String url = connectionUrl + path;
+ String url = URLDecoder.decode(connectionUrl + path, "UTF-8");
if (!StringUtils.isEmpty(queryString)) {
url = url + "?" + URLDecoder.decode(queryString, "UTF-8");
}
diff --git a/src/main/resources/config/application.yml b/src/main/resources/config/application.yml
index addfa1664b7..ad486f8a7cc 100644
--- a/src/main/resources/config/application.yml
+++ b/src/main/resources/config/application.yml
@@ -12,6 +12,7 @@
# ===================================================================
spring:
+ main.allow-circular-references: true
data:
rest:
base-path: /api
diff --git a/src/test/java/eu/dzhw/fdz/metadatamanagement/datasetmanagement/service/DataSetAttachmentShadowCopyServiceTest.java b/src/test/java/eu/dzhw/fdz/metadatamanagement/datasetmanagement/service/DataSetAttachmentShadowCopyServiceTest.java
index 291a2324075..cfb03f480bb 100644
--- a/src/test/java/eu/dzhw/fdz/metadatamanagement/datasetmanagement/service/DataSetAttachmentShadowCopyServiceTest.java
+++ b/src/test/java/eu/dzhw/fdz/metadatamanagement/datasetmanagement/service/DataSetAttachmentShadowCopyServiceTest.java
@@ -13,6 +13,7 @@
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
+import java.util.function.Consumer;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
@@ -124,7 +125,8 @@ public void createShadowCopyWithSameReleaseVersion() throws Exception {
dataAcquisitionProject.getRelease(), "1.0.0");
List files = new ArrayList<>();
- gridFsOperations.find(new Query()).forEach(files::add);
+ gridFsOperations.find(new Query())
+ .forEach((Consumer super GridFSFile>) (GridFSFile f) -> files.add(f));
assertThat(files.size(), equalTo(2));
diff --git a/src/test/java/eu/dzhw/fdz/metadatamanagement/instrumentmanagement/service/InstrumentAttachmentShadowCopyServiceTest.java b/src/test/java/eu/dzhw/fdz/metadatamanagement/instrumentmanagement/service/InstrumentAttachmentShadowCopyServiceTest.java
index d741b6c1e9b..28788c72317 100644
--- a/src/test/java/eu/dzhw/fdz/metadatamanagement/instrumentmanagement/service/InstrumentAttachmentShadowCopyServiceTest.java
+++ b/src/test/java/eu/dzhw/fdz/metadatamanagement/instrumentmanagement/service/InstrumentAttachmentShadowCopyServiceTest.java
@@ -13,6 +13,7 @@
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
+import java.util.function.Consumer;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
@@ -124,7 +125,8 @@ public void createShadowCopyWithSameReleaseVersion() throws Exception {
dataAcquisitionProject.getRelease(), "1.0.0");
List files = new ArrayList<>();
- gridFsOperations.find(new Query()).forEach(files::add);
+ gridFsOperations.find(new Query())
+ .forEach((Consumer super GridFSFile>) (GridFSFile f) -> files.add(f));
assertThat(files.size(), equalTo(2));
diff --git a/src/test/java/eu/dzhw/fdz/metadatamanagement/questionmanagement/service/QuestionImageShadowCopyServiceTest.java b/src/test/java/eu/dzhw/fdz/metadatamanagement/questionmanagement/service/QuestionImageShadowCopyServiceTest.java
index e52b083e072..095129bd391 100644
--- a/src/test/java/eu/dzhw/fdz/metadatamanagement/questionmanagement/service/QuestionImageShadowCopyServiceTest.java
+++ b/src/test/java/eu/dzhw/fdz/metadatamanagement/questionmanagement/service/QuestionImageShadowCopyServiceTest.java
@@ -13,6 +13,7 @@
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
+import java.util.function.Consumer;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
@@ -125,7 +126,8 @@ public void createShadowCopyWithSameReleaseVersion() throws Exception {
dataAcquisitionProject.getRelease(), "1.0.0");
List files = new ArrayList<>();
- gridFsOperations.find(new Query()).forEach(files::add);
+ gridFsOperations.find(new Query())
+ .forEach((Consumer super GridFSFile>) (GridFSFile f) -> files.add(f));
assertThat(files.size(), equalTo(2));
diff --git a/src/test/resources/config/application.yml b/src/test/resources/config/application.yml
index 5ef1ef3ec3d..a08e8b05b64 100644
--- a/src/test/resources/config/application.yml
+++ b/src/test/resources/config/application.yml
@@ -16,6 +16,11 @@
# JHipster specific properties
# ===================================================================
+# properties specific to spring boot upgrade from 2.5 to 2.7
+spring.main.allow-circular-references: true
+spring.mongodb.embedded.version: 4.2.13
+de.flapdoodle.mongodb.embedded.version: 4.2.13
+
spring:
data:
rest: