Merge branch '6.1.x'

This commit is contained in:
Arjen Poutsma 2024-06-17 14:20:05 +02:00
commit b65b3350be
2 changed files with 4 additions and 6 deletions

View File

@ -37,7 +37,6 @@ import org.springframework.ui.ModelMap;
import org.springframework.util.Assert; import org.springframework.util.Assert;
import org.springframework.util.StringUtils; import org.springframework.util.StringUtils;
import org.springframework.validation.BindingResult; import org.springframework.validation.BindingResult;
import org.springframework.web.HttpSessionRequiredException;
import org.springframework.web.bind.WebDataBinder; import org.springframework.web.bind.WebDataBinder;
import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.support.WebDataBinderFactory; import org.springframework.web.bind.support.WebDataBinderFactory;
@ -115,7 +114,7 @@ public final class ModelFactory {
if (!container.containsAttribute(name)) { if (!container.containsAttribute(name)) {
Object value = this.sessionAttributesHandler.retrieveAttribute(request, name); Object value = this.sessionAttributesHandler.retrieveAttribute(request, name);
if (value == null) { if (value == null) {
throw new HttpSessionRequiredException("Expected session attribute '" + name + "'", name); throw new IllegalStateException("Expected session attribute '" + name + "'");
} }
container.addAttribute(name, value); container.addAttribute(name, value);
} }

View File

@ -27,7 +27,6 @@ import org.springframework.core.DefaultParameterNameDiscoverer;
import org.springframework.ui.Model; import org.springframework.ui.Model;
import org.springframework.ui.ModelMap; import org.springframework.ui.ModelMap;
import org.springframework.validation.BindingResult; import org.springframework.validation.BindingResult;
import org.springframework.web.HttpSessionRequiredException;
import org.springframework.web.bind.WebDataBinder; import org.springframework.web.bind.WebDataBinder;
import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.SessionAttributes; import org.springframework.web.bind.annotation.SessionAttributes;
@ -43,7 +42,7 @@ import org.springframework.web.method.support.ModelAndViewContainer;
import org.springframework.web.testfixture.servlet.MockHttpServletRequest; import org.springframework.web.testfixture.servlet.MockHttpServletRequest;
import static org.assertj.core.api.Assertions.assertThat; 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.BDDMockito.given;
import static org.mockito.Mockito.mock; import static org.mockito.Mockito.mock;
@ -151,7 +150,7 @@ class ModelFactoryTests {
void sessionAttributeNotPresent() throws Exception { void sessionAttributeNotPresent() throws Exception {
ModelFactory modelFactory = new ModelFactory(null, null, this.attributeHandler); ModelFactory modelFactory = new ModelFactory(null, null, this.attributeHandler);
HandlerMethod handlerMethod = createHandlerMethod("handleSessionAttr", String.class); HandlerMethod handlerMethod = createHandlerMethod("handleSessionAttr", String.class);
assertThatExceptionOfType(HttpSessionRequiredException.class).isThrownBy(() -> assertThatIllegalStateException().isThrownBy(() ->
modelFactory.initModel(this.webRequest, this.mavContainer, handlerMethod)); modelFactory.initModel(this.webRequest, this.mavContainer, handlerMethod));
// Now add attribute and try again // Now add attribute and try again
@ -164,7 +163,7 @@ class ModelFactoryTests {
void sessionAttributeByType() throws Exception { void sessionAttributeByType() throws Exception {
ModelFactory modelFactory = new ModelFactory(null, null, this.attributeHandler); ModelFactory modelFactory = new ModelFactory(null, null, this.attributeHandler);
HandlerMethod handlerMethod = createHandlerMethod("handleTestBean", TestBean.class); HandlerMethod handlerMethod = createHandlerMethod("handleTestBean", TestBean.class);
assertThatExceptionOfType(HttpSessionRequiredException.class).isThrownBy(() -> assertThatIllegalStateException().isThrownBy(() ->
modelFactory.initModel(this.webRequest, this.mavContainer, handlerMethod)); modelFactory.initModel(this.webRequest, this.mavContainer, handlerMethod));
// Now add attribute and try again // Now add attribute and try again