diff --git a/spring-web/src/main/java/org/springframework/web/method/annotation/ModelFactory.java b/spring-web/src/main/java/org/springframework/web/method/annotation/ModelFactory.java index 884f7caaf2a2..d2dbe96836fb 100644 --- a/spring-web/src/main/java/org/springframework/web/method/annotation/ModelFactory.java +++ b/spring-web/src/main/java/org/springframework/web/method/annotation/ModelFactory.java @@ -37,7 +37,6 @@ import org.springframework.util.Assert; import org.springframework.util.StringUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.HttpSessionRequiredException; import org.springframework.web.bind.WebDataBinder; import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.support.WebDataBinderFactory; @@ -115,7 +114,7 @@ public void initModel(NativeWebRequest request, ModelAndViewContainer container, if (!container.containsAttribute(name)) { Object value = this.sessionAttributesHandler.retrieveAttribute(request, name); if (value == null) { - throw new HttpSessionRequiredException("Expected session attribute '" + name + "'", name); + throw new IllegalStateException("Expected session attribute '" + name + "'"); } container.addAttribute(name, value); } diff --git a/spring-web/src/test/java/org/springframework/web/method/annotation/ModelFactoryTests.java b/spring-web/src/test/java/org/springframework/web/method/annotation/ModelFactoryTests.java index e52a01813ed8..adce474d13c8 100644 --- a/spring-web/src/test/java/org/springframework/web/method/annotation/ModelFactoryTests.java +++ b/spring-web/src/test/java/org/springframework/web/method/annotation/ModelFactoryTests.java @@ -27,7 +27,6 @@ import org.springframework.ui.Model; import org.springframework.ui.ModelMap; import org.springframework.validation.BindingResult; -import org.springframework.web.HttpSessionRequiredException; import org.springframework.web.bind.WebDataBinder; import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.SessionAttributes; @@ -43,7 +42,7 @@ import org.springframework.web.testfixture.servlet.MockHttpServletRequest; import static org.assertj.core.api.Assertions.assertThat; -import static org.assertj.core.api.Assertions.assertThatExceptionOfType; +import static org.assertj.core.api.Assertions.assertThatIllegalStateException; import static org.mockito.BDDMockito.given; import static org.mockito.Mockito.mock; @@ -151,7 +150,7 @@ void sessionAttribute() throws Exception { void sessionAttributeNotPresent() throws Exception { ModelFactory modelFactory = new ModelFactory(null, null, this.attributeHandler); HandlerMethod handlerMethod = createHandlerMethod("handleSessionAttr", String.class); - assertThatExceptionOfType(HttpSessionRequiredException.class).isThrownBy(() -> + assertThatIllegalStateException().isThrownBy(() -> modelFactory.initModel(this.webRequest, this.mavContainer, handlerMethod)); // Now add attribute and try again @@ -164,7 +163,7 @@ void sessionAttributeNotPresent() throws Exception { void sessionAttributeByType() throws Exception { ModelFactory modelFactory = new ModelFactory(null, null, this.attributeHandler); HandlerMethod handlerMethod = createHandlerMethod("handleTestBean", TestBean.class); - assertThatExceptionOfType(HttpSessionRequiredException.class).isThrownBy(() -> + assertThatIllegalStateException().isThrownBy(() -> modelFactory.initModel(this.webRequest, this.mavContainer, handlerMethod)); // Now add attribute and try again