diff --git a/config/src/test/java/org/springframework/security/config/annotation/method/configuration/aot/EnableMethodSecurityAotTests.java b/config/src/test/java/org/springframework/security/config/annotation/method/configuration/aot/EnableMethodSecurityAotTests.java index e0b63abd2d..78fd41048e 100644 --- a/config/src/test/java/org/springframework/security/config/annotation/method/configuration/aot/EnableMethodSecurityAotTests.java +++ b/config/src/test/java/org/springframework/security/config/annotation/method/configuration/aot/EnableMethodSecurityAotTests.java @@ -18,6 +18,8 @@ import javax.sql.DataSource; +import jakarta.persistence.EntityManager; +import org.jspecify.annotations.NonNull; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; @@ -29,7 +31,7 @@ import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.context.aot.ApplicationContextAotGenerator; -import org.springframework.data.jpa.repository.config.EnableJpaRepositories; +import org.springframework.data.jpa.repository.support.JpaRepositoryFactoryBean; import org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseBuilder; import org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseType; import org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean; @@ -72,7 +74,6 @@ private static String cglibClassName(Class clazz) { @Configuration @EnableMethodSecurity - @EnableJpaRepositories static class AppConfig { @Bean @@ -92,6 +93,14 @@ LocalContainerEntityManagerFactoryBean entityManagerFactory() { return factory; } + @Bean + JpaRepositoryFactoryBean<@NonNull MessageRepository, Message, Long> repo(EntityManager entityManager) { + JpaRepositoryFactoryBean<@NonNull MessageRepository, Message, Long> bean = new JpaRepositoryFactoryBean<>( + MessageRepository.class); + bean.setEntityManager(entityManager); + return bean; + } + } } diff --git a/config/src/test/java/org/springframework/security/config/annotation/web/configurers/NamespaceHttpInterceptUrlTests.java b/config/src/test/java/org/springframework/security/config/annotation/web/configurers/NamespaceHttpInterceptUrlTests.java index 5cce20088e..697ee1f91c 100644 --- a/config/src/test/java/org/springframework/security/config/annotation/web/configurers/NamespaceHttpInterceptUrlTests.java +++ b/config/src/test/java/org/springframework/security/config/annotation/web/configurers/NamespaceHttpInterceptUrlTests.java @@ -16,6 +16,7 @@ package org.springframework.security.config.annotation.web.configurers; +import org.junit.jupiter.api.Disabled; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; @@ -85,6 +86,7 @@ public void authenticatedRequestWhenAuthorizedThenBehaviorMatchesNamespace() thr } @Test + @Disabled // see https://github.com/spring-projects/spring-security/issues/17747 public void requestWhenMappedByPostInterceptUrlThenBehaviorMatchesNamespace() throws Exception { this.spring.register(HttpInterceptUrlConfig.class, BaseController.class).autowire(); MockHttpServletRequestBuilder getWithUser = get("/admin/post").with(authentication(user("ROLE_USER"))); diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 75549647e3..e9b1bc4783 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -12,7 +12,7 @@ org-jetbrains-kotlin = "2.2.0" org-jetbrains-kotlinx = "1.10.2" org-mockito = "5.17.0" org-opensaml5 = "5.1.5" -org-springframework = "7.0.0-M7" +org-springframework = "7.0.0-M8" [libraries] ch-qos-logback-logback-classic = "ch.qos.logback:logback-classic:1.5.18"