diff --git a/build.gradle b/build.gradle
index a861c17934c..da6cea26a67 100644
--- a/build.gradle
+++ b/build.gradle
@@ -371,6 +371,7 @@ tasks.register("writeVersionToExamples") {
include(name: 'examples/spring-otel/build.gradle')
include(name: 'examples/spring-datadog/build.gradle')
include(name: 'examples/spring-datadog-statsd/build.gradle')
+ include(name: 'examples/spring-dynatrace-oneagent/build.gradle')
}
}
ant.replaceregexp(match: '.+', replace: "${globalVersion}", flags:'g', byline:true) {
diff --git a/examples/spring-datadog-statsd/build.gradle b/examples/spring-datadog-statsd/build.gradle
index 80f0476f854..d293d1c4f2e 100644
--- a/examples/spring-datadog-statsd/build.gradle
+++ b/examples/spring-datadog-statsd/build.gradle
@@ -1,6 +1,6 @@
plugins {
id 'java'
- id 'org.springframework.boot' version '3.0.4'
+ id 'org.springframework.boot' version '3.4.0'
id 'io.spring.dependency-management' version '1.1.0'
}
diff --git a/examples/spring-datadog-statsd/src/main/java/com/commercetools/sdk/examples/springmvc/web/AppController.java b/examples/spring-datadog-statsd/src/main/java/com/commercetools/sdk/examples/springmvc/web/AppController.java
index 477c9527a93..44147687a45 100644
--- a/examples/spring-datadog-statsd/src/main/java/com/commercetools/sdk/examples/springmvc/web/AppController.java
+++ b/examples/spring-datadog-statsd/src/main/java/com/commercetools/sdk/examples/springmvc/web/AppController.java
@@ -42,9 +42,9 @@ public String pop(Model model, HttpSession session) throws ExecutionException, I
}
@GetMapping("/cart")
- public String cart(Model model, HttpSession session) {
+ public String cart(Model model, HttpSession session) throws ExecutionException, InterruptedException {
final CompletableFuture cart = new CartRepository(apiRoot, session).meCart();
- model.addAttribute("cart", cart);
+ model.addAttribute("cart", cart.get());
return "mycart/index";
}
diff --git a/examples/spring-datadog-statsd/src/test/java/com/commercetools/sdk/examples/springmvc/SpringmvcApplicationTests.java b/examples/spring-datadog-statsd/src/test/java/com/commercetools/sdk/examples/springmvc/SpringmvcApplicationTests.java
deleted file mode 100644
index 471369f2b7f..00000000000
--- a/examples/spring-datadog-statsd/src/test/java/com/commercetools/sdk/examples/springmvc/SpringmvcApplicationTests.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package com.commercetools.sdk.examples.springmvc;
-
-import org.junit.jupiter.api.Test;
-import org.springframework.boot.test.context.SpringBootTest;
-
-@SpringBootTest
-class SpringmvcApplicationTests {
-
- @Test
- void contextLoads() {
- }
-
-}
diff --git a/examples/spring-datadog/build.gradle b/examples/spring-datadog/build.gradle
index 81e56385a22..57d964807be 100644
--- a/examples/spring-datadog/build.gradle
+++ b/examples/spring-datadog/build.gradle
@@ -1,6 +1,6 @@
plugins {
id 'java'
- id 'org.springframework.boot' version '3.0.4'
+ id 'org.springframework.boot' version '3.4.0'
id 'io.spring.dependency-management' version '1.1.0'
id "de.undercouch.download" version "5.3.0"
}
@@ -30,12 +30,11 @@ dependencies {
implementation "com.commercetools.sdk:commercetools-apachehttp-client:${versions.commercetools}"
implementation "com.commercetools.sdk:commercetools-monitoring-datadog:${versions.commercetools}"
implementation 'javax.inject:javax.inject:1'
- implementation 'com.dynatrace.metric.util:dynatrace-metric-utils-java:2.2.0'
implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'
implementation 'org.springframework.boot:spring-boot-starter-security'
implementation 'org.springframework.boot:spring-boot-starter-webflux'
implementation 'org.springframework.session:spring-session-core'
- implementation 'org.thymeleaf.extras:thymeleaf-extras-springsecurity5:3.0.4.RELEASE'
+ implementation 'org.thymeleaf.extras:thymeleaf-extras-springsecurity6:3.1.2.RELEASE'
implementation "com.datadoghq:datadog-api-client:2.20.0"
testImplementation 'org.springframework.boot:spring-boot-starter-test'
testImplementation 'org.springframework.security:spring-security-test'
diff --git a/examples/spring-datadog/gradle/wrapper/gradle-wrapper.jar b/examples/spring-datadog/gradle/wrapper/gradle-wrapper.jar
index d64cd491770..a4b76b9530d 100644
Binary files a/examples/spring-datadog/gradle/wrapper/gradle-wrapper.jar and b/examples/spring-datadog/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/examples/spring-datadog/gradle/wrapper/gradle-wrapper.properties b/examples/spring-datadog/gradle/wrapper/gradle-wrapper.properties
index a80b22ce5cf..c1d5e018598 100644
--- a/examples/spring-datadog/gradle/wrapper/gradle-wrapper.properties
+++ b/examples/spring-datadog/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.6-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-all.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
diff --git a/examples/spring-datadog/gradlew b/examples/spring-datadog/gradlew
index 1aa94a42690..f5feea6d6b1 100755
--- a/examples/spring-datadog/gradlew
+++ b/examples/spring-datadog/gradlew
@@ -15,6 +15,8 @@
# See the License for the specific language governing permissions and
# limitations under the License.
#
+# SPDX-License-Identifier: Apache-2.0
+#
##############################################################################
#
@@ -55,7 +57,7 @@
# Darwin, MinGW, and NonStop.
#
# (3) This script is generated from the Groovy template
-# https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
+# https://github.com/gradle/gradle/blob/HEAD/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
# within the Gradle project.
#
# You can find Gradle at https://github.com/gradle/gradle/.
@@ -84,7 +86,8 @@ done
# shellcheck disable=SC2034
APP_BASE_NAME=${0##*/}
# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
-APP_HOME=$( cd "${APP_HOME:-./}" > /dev/null && pwd -P ) || exit
+APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s
+' "$PWD" ) || exit
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD=maximum
diff --git a/examples/spring-datadog/gradlew.bat b/examples/spring-datadog/gradlew.bat
index 25da30dbdee..9d21a21834d 100644
--- a/examples/spring-datadog/gradlew.bat
+++ b/examples/spring-datadog/gradlew.bat
@@ -13,6 +13,8 @@
@rem See the License for the specific language governing permissions and
@rem limitations under the License.
@rem
+@rem SPDX-License-Identifier: Apache-2.0
+@rem
@if "%DEBUG%"=="" @echo off
@rem ##########################################################################
diff --git a/examples/spring-datadog/src/main/java/com/commercetools/sdk/examples/springmvc/config/WebConfig.java b/examples/spring-datadog/src/main/java/com/commercetools/sdk/examples/springmvc/config/WebConfig.java
index 3e8b805ca99..e85a8d8a4c9 100644
--- a/examples/spring-datadog/src/main/java/com/commercetools/sdk/examples/springmvc/config/WebConfig.java
+++ b/examples/spring-datadog/src/main/java/com/commercetools/sdk/examples/springmvc/config/WebConfig.java
@@ -12,7 +12,7 @@
import org.springframework.web.reactive.config.ResourceHandlerRegistry;
import org.springframework.web.reactive.config.ViewResolverRegistry;
import org.springframework.web.reactive.config.WebFluxConfigurer;
-import org.thymeleaf.extras.springsecurity5.dialect.SpringSecurityDialect;
+import org.thymeleaf.extras.springsecurity6.dialect.SpringSecurityDialect;
import org.thymeleaf.spring6.ISpringWebFluxTemplateEngine;
import org.thymeleaf.spring6.SpringWebFluxTemplateEngine;
import org.thymeleaf.spring6.templateresolver.SpringResourceTemplateResolver;
diff --git a/examples/spring-datadog/src/main/java/com/commercetools/sdk/examples/springmvc/service/CtpClientBeanService.java b/examples/spring-datadog/src/main/java/com/commercetools/sdk/examples/springmvc/service/CtpClientBeanService.java
index 3c4f04aeed4..9681df0d5a0 100644
--- a/examples/spring-datadog/src/main/java/com/commercetools/sdk/examples/springmvc/service/CtpClientBeanService.java
+++ b/examples/spring-datadog/src/main/java/com/commercetools/sdk/examples/springmvc/service/CtpClientBeanService.java
@@ -42,7 +42,6 @@ public ApiHttpClient client() {
}
@Bean
- @Autowired
public ProjectApiRoot apiRoot(ApiHttpClient client) {
final ProjectApiRoot build = ProjectApiRoot.fromClient(projectKey, client);
diff --git a/examples/spring-datadog/src/test/java/com/commercetools/sdk/examples/springmvc/SpringmvcApplicationTests.java b/examples/spring-datadog/src/test/java/com/commercetools/sdk/examples/springmvc/SpringmvcApplicationTests.java
deleted file mode 100644
index 471369f2b7f..00000000000
--- a/examples/spring-datadog/src/test/java/com/commercetools/sdk/examples/springmvc/SpringmvcApplicationTests.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package com.commercetools.sdk.examples.springmvc;
-
-import org.junit.jupiter.api.Test;
-import org.springframework.boot.test.context.SpringBootTest;
-
-@SpringBootTest
-class SpringmvcApplicationTests {
-
- @Test
- void contextLoads() {
- }
-
-}
diff --git a/examples/spring-dynatrace-oneagent/build.gradle b/examples/spring-dynatrace-oneagent/build.gradle
index 75ecdb580c1..76947dca6b1 100644
--- a/examples/spring-dynatrace-oneagent/build.gradle
+++ b/examples/spring-dynatrace-oneagent/build.gradle
@@ -1,6 +1,6 @@
plugins {
id 'java'
- id 'org.springframework.boot' version '3.0.4'
+ id 'org.springframework.boot' version '3.4.0'
id 'io.spring.dependency-management' version '1.1.0'
}
@@ -20,7 +20,7 @@ repositories {
ext {
versions = [
- commercetools: "17.3.0",
+ commercetools: "17.20.0",
]
}
diff --git a/examples/spring-dynatrace-oneagent/gradle/wrapper/gradle-wrapper.properties b/examples/spring-dynatrace-oneagent/gradle/wrapper/gradle-wrapper.properties
index 774fae87671..81aa1c0448a 100644
--- a/examples/spring-dynatrace-oneagent/gradle/wrapper/gradle-wrapper.properties
+++ b/examples/spring-dynatrace-oneagent/gradle/wrapper/gradle-wrapper.properties
@@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-7.6.1-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
diff --git a/examples/spring-dynatrace-oneagent/src/main/java/com/commercetools/sdk/examples/springmvc/web/AppController.java b/examples/spring-dynatrace-oneagent/src/main/java/com/commercetools/sdk/examples/springmvc/web/AppController.java
index 477c9527a93..44147687a45 100644
--- a/examples/spring-dynatrace-oneagent/src/main/java/com/commercetools/sdk/examples/springmvc/web/AppController.java
+++ b/examples/spring-dynatrace-oneagent/src/main/java/com/commercetools/sdk/examples/springmvc/web/AppController.java
@@ -42,9 +42,9 @@ public String pop(Model model, HttpSession session) throws ExecutionException, I
}
@GetMapping("/cart")
- public String cart(Model model, HttpSession session) {
+ public String cart(Model model, HttpSession session) throws ExecutionException, InterruptedException {
final CompletableFuture cart = new CartRepository(apiRoot, session).meCart();
- model.addAttribute("cart", cart);
+ model.addAttribute("cart", cart.get());
return "mycart/index";
}
diff --git a/examples/spring-newrelic/build.gradle b/examples/spring-newrelic/build.gradle
index c7664212baa..0ec07c81533 100644
--- a/examples/spring-newrelic/build.gradle
+++ b/examples/spring-newrelic/build.gradle
@@ -1,6 +1,6 @@
plugins {
id 'java'
- id 'org.springframework.boot' version '3.0.4'
+ id 'org.springframework.boot' version '3.4.0'
id 'io.spring.dependency-management' version '1.1.0'
id "de.undercouch.download" version "5.3.0"
}
@@ -22,7 +22,7 @@ repositories {
ext {
versions = [
commercetools: "17.20.0",
- newrelic: "8.0.1"
+ newrelic: "8.16.0"
]
}
diff --git a/examples/spring-newrelic/gradle/wrapper/gradle-wrapper.properties b/examples/spring-newrelic/gradle/wrapper/gradle-wrapper.properties
index 774fae87671..81aa1c0448a 100644
--- a/examples/spring-newrelic/gradle/wrapper/gradle-wrapper.properties
+++ b/examples/spring-newrelic/gradle/wrapper/gradle-wrapper.properties
@@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-7.6.1-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
diff --git a/examples/spring-newrelic/src/main/java/com/commercetools/sdk/examples/springmvc/service/CtpClientBeanService.java b/examples/spring-newrelic/src/main/java/com/commercetools/sdk/examples/springmvc/service/CtpClientBeanService.java
index 10d631ea8ef..f73cd58db5e 100644
--- a/examples/spring-newrelic/src/main/java/com/commercetools/sdk/examples/springmvc/service/CtpClientBeanService.java
+++ b/examples/spring-newrelic/src/main/java/com/commercetools/sdk/examples/springmvc/service/CtpClientBeanService.java
@@ -46,7 +46,6 @@ public ApiHttpClient client() {
}
@Bean
- @RequestScope
@Trace(dispatcher = true)
public ProjectScopedApiRoot apiRoot(ApiHttpClient client) {
ContextApiHttpClient contextClient = ContextApiHttpClient.of(client, new MDCContext(), false)
diff --git a/examples/spring-newrelic/src/main/java/com/commercetools/sdk/examples/springmvc/web/AppController.java b/examples/spring-newrelic/src/main/java/com/commercetools/sdk/examples/springmvc/web/AppController.java
index fca6fa394c4..51433bc0752 100644
--- a/examples/spring-newrelic/src/main/java/com/commercetools/sdk/examples/springmvc/web/AppController.java
+++ b/examples/spring-newrelic/src/main/java/com/commercetools/sdk/examples/springmvc/web/AppController.java
@@ -45,10 +45,10 @@ public String pop(Model model, HttpSession session) throws ExecutionException, I
}
@GetMapping("/cart")
- public String cart(Model model, HttpSession session) {
+ public String cart(Model model, HttpSession session) throws ExecutionException, InterruptedException {
final CompletableFuture cart = new CartRepository(apiRoot, session).meCart();
- model.addAttribute("cart", cart);
+ model.addAttribute("cart", cart.get());
return "mycart/index";
}
diff --git a/examples/spring-newrelic/src/test/java/com/commercetools/sdk/examples/springmvc/SpringmvcApplicationTests.java b/examples/spring-newrelic/src/test/java/com/commercetools/sdk/examples/springmvc/SpringmvcApplicationTests.java
deleted file mode 100644
index 471369f2b7f..00000000000
--- a/examples/spring-newrelic/src/test/java/com/commercetools/sdk/examples/springmvc/SpringmvcApplicationTests.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package com.commercetools.sdk.examples.springmvc;
-
-import org.junit.jupiter.api.Test;
-import org.springframework.boot.test.context.SpringBootTest;
-
-@SpringBootTest
-class SpringmvcApplicationTests {
-
- @Test
- void contextLoads() {
- }
-
-}
diff --git a/examples/spring-otel/build.gradle b/examples/spring-otel/build.gradle
index 0bc9c39c027..792bebcf6b5 100644
--- a/examples/spring-otel/build.gradle
+++ b/examples/spring-otel/build.gradle
@@ -1,6 +1,6 @@
plugins {
id 'java'
- id 'org.springframework.boot' version '3.0.4'
+ id 'org.springframework.boot' version '3.4.0'
id 'io.spring.dependency-management' version '1.1.0'
id "de.undercouch.download" version "5.3.0"
}
diff --git a/examples/spring-otel/gradle/wrapper/gradle-wrapper.properties b/examples/spring-otel/gradle/wrapper/gradle-wrapper.properties
index 774fae87671..81aa1c0448a 100644
--- a/examples/spring-otel/gradle/wrapper/gradle-wrapper.properties
+++ b/examples/spring-otel/gradle/wrapper/gradle-wrapper.properties
@@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-7.6.1-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
diff --git a/examples/spring-otel/src/main/java/com/commercetools/sdk/examples/springmvc/web/AppContoller.java b/examples/spring-otel/src/main/java/com/commercetools/sdk/examples/springmvc/web/AppController.java
similarity index 93%
rename from examples/spring-otel/src/main/java/com/commercetools/sdk/examples/springmvc/web/AppContoller.java
rename to examples/spring-otel/src/main/java/com/commercetools/sdk/examples/springmvc/web/AppController.java
index df993cf8b91..38ddd8f39af 100644
--- a/examples/spring-otel/src/main/java/com/commercetools/sdk/examples/springmvc/web/AppContoller.java
+++ b/examples/spring-otel/src/main/java/com/commercetools/sdk/examples/springmvc/web/AppController.java
@@ -19,7 +19,7 @@
import java.util.concurrent.ExecutionException;
@Controller
-public class AppContoller {
+public class AppController {
@GetMapping("/")
public String home() {
return "home/index";
@@ -43,10 +43,10 @@ public String pop(Model model, HttpSession session) throws ExecutionException, I
}
@GetMapping("/cart")
- public String cart(Model model, HttpSession session) {
+ public String cart(Model model, HttpSession session) throws ExecutionException, InterruptedException {
final CompletableFuture cart = new CartRepository(apiRoot, session).meCart();
- model.addAttribute("cart", cart);
+ model.addAttribute("cart", cart.get());
return "mycart/index";
}
diff --git a/examples/spring-otel/src/test/java/com/commercetools/sdk/examples/springmvc/SpringmvcApplicationTests.java b/examples/spring-otel/src/test/java/com/commercetools/sdk/examples/springmvc/SpringmvcApplicationTests.java
deleted file mode 100644
index 471369f2b7f..00000000000
--- a/examples/spring-otel/src/test/java/com/commercetools/sdk/examples/springmvc/SpringmvcApplicationTests.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package com.commercetools.sdk.examples.springmvc;
-
-import org.junit.jupiter.api.Test;
-import org.springframework.boot.test.context.SpringBootTest;
-
-@SpringBootTest
-class SpringmvcApplicationTests {
-
- @Test
- void contextLoads() {
- }
-
-}
diff --git a/examples/spring/build.gradle b/examples/spring/build.gradle
index d3fdaccd2eb..2b3f6a3ec3d 100644
--- a/examples/spring/build.gradle
+++ b/examples/spring/build.gradle
@@ -1,5 +1,5 @@
plugins {
- id 'org.springframework.boot' version '2.6.0'
+ id 'org.springframework.boot' version '3.4.0'
id 'io.spring.dependency-management' version '1.0.11.RELEASE'
id 'java'
id "com.diffplug.spotless" version "6.10.0"
@@ -31,8 +31,7 @@ spotless {
ext {
versions = [
- commercetools: "17.20.0",
- newrelic: "7.7.0"
+ commercetools: "17.20.0"
]
}
@@ -44,7 +43,7 @@ dependencies {
implementation 'org.springframework.boot:spring-boot-starter-security'
implementation 'org.springframework.boot:spring-boot-starter-webflux'
implementation 'org.springframework.session:spring-session-core'
- implementation 'org.thymeleaf.extras:thymeleaf-extras-springsecurity5:3.0.4.RELEASE'
+ implementation 'org.thymeleaf.extras:thymeleaf-extras-springsecurity6:3.1.2.RELEASE'
developmentOnly("org.springframework.boot:spring-boot-devtools")
testImplementation 'org.springframework.boot:spring-boot-starter-test'
testImplementation 'org.springframework.security:spring-security-test'
diff --git a/examples/spring/gradle/wrapper/gradle-wrapper.properties b/examples/spring/gradle/wrapper/gradle-wrapper.properties
index ffed3a254e9..81aa1c0448a 100644
--- a/examples/spring/gradle/wrapper/gradle-wrapper.properties
+++ b/examples/spring/gradle/wrapper/gradle-wrapper.properties
@@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
diff --git a/examples/spring/src/main/java/com/commercetools/sdk/examples/spring/config/CtpSecurityConfig.java b/examples/spring/src/main/java/com/commercetools/sdk/examples/spring/config/CtpSecurityConfig.java
index 2f51401ee27..d95a668f4ed 100644
--- a/examples/spring/src/main/java/com/commercetools/sdk/examples/spring/config/CtpSecurityConfig.java
+++ b/examples/spring/src/main/java/com/commercetools/sdk/examples/spring/config/CtpSecurityConfig.java
@@ -122,21 +122,22 @@ public CtpReactiveAuthenticationManagerResolver(final ApiHttpClient apiHttpClien
@Override
public Mono resolve(final ServerWebExchange context) {
return Mono.just(new CtpReactiveAuthenticationManager(meClient(apiHttpClient, context.getSession()),
- credentials(), projectKey));
+ credentials(), projectKey, authUrl));
}
private ProjectApiRoot meClient(final ApiHttpClient client, final Mono session) {
TokenStorage storage = new SessionTokenStorage(session);
ApiRootBuilder builder = ApiRootBuilder.of(client)
- .withApiBaseUrl(apiBaseUrl != null ? apiBaseUrl: ServiceRegion.GCP_EUROPE_WEST1.getApiUrl())
+ .withApiBaseUrl(apiBaseUrl != null ? apiBaseUrl : ServiceRegion.GCP_EUROPE_WEST1.getApiUrl())
.withProjectKey(projectKey);
if (authUrl != null) {
- builder = builder.withAnonymousRefreshFlow(credentials(), authUrl + "/oauth/" + projectKey + "/anonymous/token", authUrl + "/oauth/token", storage);
- } else {
- builder = builder
- .withAnonymousRefreshFlow(credentials(), ServiceRegion.GCP_EUROPE_WEST1, storage);
+ builder = builder.withAnonymousRefreshFlow(credentials(),
+ authUrl + "/oauth/" + projectKey + "/anonymous/token", authUrl + "/oauth/token", storage);
+ }
+ else {
+ builder = builder.withAnonymousRefreshFlow(credentials(), ServiceRegion.GCP_EUROPE_WEST1, storage);
}
return builder.build(projectKey);
diff --git a/examples/spring/src/main/java/com/commercetools/sdk/examples/spring/config/MeClientFilter.java b/examples/spring/src/main/java/com/commercetools/sdk/examples/spring/config/MeClientFilter.java
index 235fe2fb594..ff078bef3cc 100644
--- a/examples/spring/src/main/java/com/commercetools/sdk/examples/spring/config/MeClientFilter.java
+++ b/examples/spring/src/main/java/com/commercetools/sdk/examples/spring/config/MeClientFilter.java
@@ -64,14 +64,15 @@ private ProjectApiRoot meClient(ApiHttpClient client, Mono session)
final TokenStorage storage = new SessionTokenStorage(session);
ApiRootBuilder builder = ApiRootBuilder.of(client)
- .withApiBaseUrl(apiBaseUrl != null ? apiBaseUrl: ServiceRegion.GCP_EUROPE_WEST1.getApiUrl())
+ .withApiBaseUrl(apiBaseUrl != null ? apiBaseUrl : ServiceRegion.GCP_EUROPE_WEST1.getApiUrl())
.withProjectKey(projectKey);
if (authUrl != null) {
- builder = builder.withAnonymousRefreshFlow(credentials(), authUrl + "/oauth/" + projectKey + "/anonymous/token", authUrl + "/oauth/token", storage);
- } else {
- builder = builder
- .withAnonymousRefreshFlow(credentials(), ServiceRegion.GCP_EUROPE_WEST1, storage);
+ builder = builder.withAnonymousRefreshFlow(credentials(),
+ authUrl + "/oauth/" + projectKey + "/anonymous/token", authUrl + "/oauth/token", storage);
+ }
+ else {
+ builder = builder.withAnonymousRefreshFlow(credentials(), ServiceRegion.GCP_EUROPE_WEST1, storage);
}
return builder.build(projectKey);
diff --git a/examples/spring/src/main/java/com/commercetools/sdk/examples/spring/config/WebConfig.java b/examples/spring/src/main/java/com/commercetools/sdk/examples/spring/config/WebConfig.java
index 3cec957e39f..d9652594111 100644
--- a/examples/spring/src/main/java/com/commercetools/sdk/examples/spring/config/WebConfig.java
+++ b/examples/spring/src/main/java/com/commercetools/sdk/examples/spring/config/WebConfig.java
@@ -13,11 +13,11 @@
import org.springframework.web.reactive.config.ResourceHandlerRegistry;
import org.springframework.web.reactive.config.ViewResolverRegistry;
import org.springframework.web.reactive.config.WebFluxConfigurer;
-import org.thymeleaf.extras.springsecurity5.dialect.SpringSecurityDialect;
-import org.thymeleaf.spring5.ISpringWebFluxTemplateEngine;
-import org.thymeleaf.spring5.SpringWebFluxTemplateEngine;
-import org.thymeleaf.spring5.templateresolver.SpringResourceTemplateResolver;
-import org.thymeleaf.spring5.view.reactive.ThymeleafReactiveViewResolver;
+import org.thymeleaf.extras.springsecurity6.dialect.SpringSecurityDialect;
+import org.thymeleaf.spring6.ISpringWebFluxTemplateEngine;
+import org.thymeleaf.spring6.SpringWebFluxTemplateEngine;
+import org.thymeleaf.spring6.templateresolver.SpringResourceTemplateResolver;
+import org.thymeleaf.spring6.view.reactive.ThymeleafReactiveViewResolver;
import org.thymeleaf.templatemode.TemplateMode;
@Configuration
diff --git a/examples/spring/src/main/java/com/commercetools/sdk/examples/spring/service/CtpClientBeanService.java b/examples/spring/src/main/java/com/commercetools/sdk/examples/spring/service/CtpClientBeanService.java
index 88134a24a1f..f575efb81f8 100644
--- a/examples/spring/src/main/java/com/commercetools/sdk/examples/spring/service/CtpClientBeanService.java
+++ b/examples/spring/src/main/java/com/commercetools/sdk/examples/spring/service/CtpClientBeanService.java
@@ -7,7 +7,6 @@
import io.vrap.rmf.base.client.*;
import io.vrap.rmf.base.client.oauth2.ClientCredentials;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.context.annotation.Bean;
@@ -41,7 +40,8 @@ public ApiHttpClient client() {
ApiRootBuilder builder;
if (authUrl != null) {
builder = ApiRootBuilder.of().defaultClient(credentials(), authUrl + "/oauth/token", apiBaseUrl);
- } else {
+ }
+ else {
builder = ApiRootBuilder.of().defaultClient(credentials());
}
@@ -49,7 +49,6 @@ public ApiHttpClient client() {
}
@Bean
- @Autowired
public ProjectApiRoot apiRoot(ApiHttpClient client) {
final ProjectApiRoot build = ProjectApiRoot.fromClient(projectKey, client);
diff --git a/examples/spring/src/main/java/com/commercetools/sdk/examples/spring/service/CtpReactiveAuthenticationManager.java b/examples/spring/src/main/java/com/commercetools/sdk/examples/spring/service/CtpReactiveAuthenticationManager.java
index 6ea4cf3e5a8..d1f6c7fae25 100644
--- a/examples/spring/src/main/java/com/commercetools/sdk/examples/spring/service/CtpReactiveAuthenticationManager.java
+++ b/examples/spring/src/main/java/com/commercetools/sdk/examples/spring/service/CtpReactiveAuthenticationManager.java
@@ -25,6 +25,7 @@
import reactor.core.publisher.Mono;
public class CtpReactiveAuthenticationManager implements ReactiveAuthenticationManager {
+ private final String authUrl;
VrapHttpClient client;
ProjectApiRoot apiRoot;
@@ -33,11 +34,12 @@ public class CtpReactiveAuthenticationManager implements ReactiveAuthenticationM
private final String projectKey;
public CtpReactiveAuthenticationManager(final ProjectApiRoot apiRoot, final ClientCredentials credentials,
- final String projectKey) {
+ final String projectKey, final String authUrl) {
this.apiRoot = apiRoot;
this.client = HttpClientSupplier.of().get();
this.credentials = credentials;
this.projectKey = projectKey;
+ this.authUrl = authUrl;
}
@Override
@@ -54,10 +56,12 @@ public Mono authenticate(Authentication authentication) {
.fromFuture(
apiRoot.me().login().post(customerSignin.build()).execute().exceptionally(throwable -> null))
.flatMap(customerSignInResultApiHttpResponse -> {
+ String passwordFlowTokenURL = this.authUrl != null
+ ? this.authUrl + "/oauth/" + projectKey + "/customers/token"
+ : ServiceRegion.GCP_EUROPE_WEST1.getPasswordFlowTokenURL(projectKey);
GlobalCustomerPasswordTokenSupplier supplier = new GlobalCustomerPasswordTokenSupplier(
credentials.getClientId(), credentials.getClientSecret(), authentication.getName(),
- authentication.getCredentials().toString(), null,
- ServiceRegion.GCP_EUROPE_WEST1.getPasswordFlowTokenURL(projectKey), client);
+ authentication.getCredentials().toString(), null, passwordFlowTokenURL, client);
return Mono.zip(Mono.fromFuture(supplier.getToken().exceptionally(throwable -> null)),
Mono.just(customerSignInResultApiHttpResponse.getBody()));
diff --git a/examples/spring/src/main/resources/logback.xml b/examples/spring/src/main/resources/logback.xml
index 668900f6930..ceeb57bb009 100644
--- a/examples/spring/src/main/resources/logback.xml
+++ b/examples/spring/src/main/resources/logback.xml
@@ -5,7 +5,7 @@
class="ch.qos.logback.core.ConsoleAppender">
- %black(%d{ISO8601}) %highlight(%-5level) [%blue(%t)] %yellow(%logger{1.}): requestId=%X{requestId} %msg%n%throwable
+ %black(%d{ISO8601}) %highlight(%-5level) [%blue(%t)] %yellow(%logger{1}): requestId=%X{requestId} %msg%n%throwable
diff --git a/examples/spring/src/test/java/com/commercetools/sdk/examples/spring/ApplicationTests.java b/examples/spring/src/test/java/com/commercetools/sdk/examples/spring/ApplicationTests.java
deleted file mode 100644
index 610883860f3..00000000000
--- a/examples/spring/src/test/java/com/commercetools/sdk/examples/spring/ApplicationTests.java
+++ /dev/null
@@ -1,14 +0,0 @@
-
-package com.commercetools.sdk.examples.spring;
-
-import org.junit.jupiter.api.Test;
-import org.springframework.boot.test.context.SpringBootTest;
-
-@SpringBootTest
-class ApplicationTests {
-
- @Test
- void contextLoads() {
- }
-
-}