diff --git a/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/package-info.java b/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/package-info.java index 3c4228f0fd..289c322a51 100644 --- a/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/package-info.java +++ b/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/package-info.java @@ -1,4 +1,6 @@ /** - * Provides various controller styles for request handling. + * Support for various programming model styles including the invocation of + * different types of handlers (e.g. annotated controllers, simple WebHandler, + * etc) as well as result handling (@ResponseBody, view resolution, etc). */ package org.springframework.web.reactive.result; diff --git a/spring-web-reactive/src/main/java/org/springframework/web/reactive/view/AbstractUrlBasedView.java b/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/AbstractUrlBasedView.java similarity index 97% rename from spring-web-reactive/src/main/java/org/springframework/web/reactive/view/AbstractUrlBasedView.java rename to spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/AbstractUrlBasedView.java index 50ffac0b3c..6c582bebfd 100644 --- a/spring-web-reactive/src/main/java/org/springframework/web/reactive/view/AbstractUrlBasedView.java +++ b/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/AbstractUrlBasedView.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.springframework.web.reactive.view; +package org.springframework.web.reactive.result.view; import java.util.Locale; diff --git a/spring-web-reactive/src/main/java/org/springframework/web/reactive/view/AbstractView.java b/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/AbstractView.java similarity index 97% rename from spring-web-reactive/src/main/java/org/springframework/web/reactive/view/AbstractView.java rename to spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/AbstractView.java index 436bb63fe7..b26fdd0d28 100644 --- a/spring-web-reactive/src/main/java/org/springframework/web/reactive/view/AbstractView.java +++ b/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/AbstractView.java @@ -13,10 +13,9 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.springframework.web.reactive.view; +package org.springframework.web.reactive.result.view; import java.util.ArrayList; -import java.util.Collections; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; @@ -35,7 +34,6 @@ import org.springframework.http.MediaType; import org.springframework.ui.ModelMap; import org.springframework.util.Assert; import org.springframework.web.reactive.HandlerResult; -import org.springframework.web.reactive.View; import org.springframework.web.server.ServerWebExchange; /** diff --git a/spring-web-reactive/src/main/java/org/springframework/web/reactive/view/UrlBasedViewResolver.java b/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/UrlBasedViewResolver.java similarity index 86% rename from spring-web-reactive/src/main/java/org/springframework/web/reactive/view/UrlBasedViewResolver.java rename to spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/UrlBasedViewResolver.java index e6db4c6f37..651205f385 100644 --- a/spring-web-reactive/src/main/java/org/springframework/web/reactive/view/UrlBasedViewResolver.java +++ b/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/UrlBasedViewResolver.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.springframework.web.reactive.view; +package org.springframework.web.reactive.result.view; import java.util.Locale; @@ -22,19 +22,17 @@ import reactor.core.publisher.Mono; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.InitializingBean; import org.springframework.util.PatternMatchUtils; -import org.springframework.web.reactive.View; /** - * A {@link org.springframework.web.reactive.ViewResolver ViewResolver} that - * allow direct resolution of symbolic view names to URLs without explicit - * mapping definition. This is useful if symbolic names match the names of view - * resources in a straightforward manner (i.e. the symbolic name is the unique - * part of the resource's filename), without the need for a dedicated mapping - * to be defined for each view. + * A {@link ViewResolver} that allow direct resolution of symbolic view names + * to URLs without explicit mapping definition. This is useful if symbolic names + * match the names of view resources in a straightforward manner (i.e. the + * symbolic name is the unique part of the resource's filename), without the need + * for a dedicated mapping to be defined for each view. * *

Supports {@link AbstractUrlBasedView} subclasses like - * {@link org.springframework.web.reactive.view.freemarker.FreeMarkerView}. + * {@link org.springframework.web.reactive.result.view.freemarker.FreeMarkerView}. * The view class for all views generated by this resolver can be specified * via the "viewClass" property. * @@ -54,7 +52,7 @@ import org.springframework.web.reactive.View; * a symbolic view name to different resources depending on the current locale. * * @author Rossen Stoyanchev */ -public class UrlBasedViewResolver extends ViewResolverSupport implements InitializingBean { +public class UrlBasedViewResolver extends ViewResolverSupport implements ViewResolver, InitializingBean { private Class viewClass; @@ -125,9 +123,8 @@ public class UrlBasedViewResolver extends ViewResolverSupport implements Initial /** * Set the view names (or name patterns) that can be handled by this - * {@link org.springframework.web.reactive.ViewResolver}. View names can - * contain simple wildcards such that 'my*', '*Report' and '*Repo*' will - * all match the view name 'myReport'. + * {@link ViewResolver}. View names can contain simple wildcards such that + * 'my*', '*Report' and '*Repo*' will all match the view name 'myReport'. * @see #canHandle */ public void setViewNames(String... viewNames) { @@ -136,7 +133,7 @@ public class UrlBasedViewResolver extends ViewResolverSupport implements Initial /** * Return the view names (or name patterns) that can be handled by this - * {@link org.springframework.web.reactive.ViewResolver}. + * {@link ViewResolver}. */ protected String[] getViewNames() { return this.viewNames; @@ -167,8 +164,7 @@ public class UrlBasedViewResolver extends ViewResolverSupport implements Initial } /** - * Indicates whether or not this - * {@link org.springframework.web.reactive.ViewResolver} can handle the + * Indicates whether or not this {@link ViewResolver} can handle the * supplied view name. If not, an empty result is returned. The default * implementation checks against the configured {@link #setViewNames * view names}. diff --git a/spring-web-reactive/src/main/java/org/springframework/web/reactive/View.java b/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/View.java similarity index 95% rename from spring-web-reactive/src/main/java/org/springframework/web/reactive/View.java rename to spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/View.java index 91fb8c3dd0..b9b82f6faa 100644 --- a/spring-web-reactive/src/main/java/org/springframework/web/reactive/View.java +++ b/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/View.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.springframework.web.reactive; +package org.springframework.web.reactive.result.view; import java.util.List; import java.util.Optional; @@ -22,6 +22,7 @@ import reactor.core.publisher.Flux; import org.springframework.core.io.buffer.DataBuffer; import org.springframework.http.MediaType; +import org.springframework.web.reactive.HandlerResult; import org.springframework.web.server.ServerWebExchange; /** diff --git a/spring-web-reactive/src/main/java/org/springframework/web/reactive/ViewResolver.java b/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/ViewResolver.java similarity index 76% rename from spring-web-reactive/src/main/java/org/springframework/web/reactive/ViewResolver.java rename to spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/ViewResolver.java index 942f050193..4ba8e38669 100644 --- a/spring-web-reactive/src/main/java/org/springframework/web/reactive/ViewResolver.java +++ b/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/ViewResolver.java @@ -1,4 +1,4 @@ -package org.springframework.web.reactive; +package org.springframework.web.reactive.result.view; import java.util.Locale; @@ -10,11 +10,11 @@ import reactor.core.publisher.Mono; * *

The process of view resolution is driven through a ViewResolver-based * {@code HandlerResultHandler} implementation called - * {@link org.springframework.web.reactive.view.ViewResolverResultHandler + * {@link org.springframework.web.reactive.result.view.ViewResolverResultHandler * ViewResolverResultHandler}. * * @author Rossen Stoyanchev - * @see org.springframework.web.reactive.view.ViewResolverResultHandler + * @see org.springframework.web.reactive.result.view.ViewResolverResultHandler */ public interface ViewResolver { diff --git a/spring-web-reactive/src/main/java/org/springframework/web/reactive/view/ViewResolverResultHandler.java b/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/ViewResolverResultHandler.java similarity index 95% rename from spring-web-reactive/src/main/java/org/springframework/web/reactive/view/ViewResolverResultHandler.java rename to spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/ViewResolverResultHandler.java index d4a22dce13..1ea8a1b5c1 100644 --- a/spring-web-reactive/src/main/java/org/springframework/web/reactive/view/ViewResolverResultHandler.java +++ b/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/ViewResolverResultHandler.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.springframework.web.reactive.view; +package org.springframework.web.reactive.result.view; import java.util.ArrayList; import java.util.Collections; @@ -31,8 +31,6 @@ import org.springframework.core.io.buffer.DataBuffer; import org.springframework.util.Assert; import org.springframework.web.reactive.HandlerResult; import org.springframework.web.reactive.HandlerResultHandler; -import org.springframework.web.reactive.View; -import org.springframework.web.reactive.ViewResolver; import org.springframework.web.server.ServerWebExchange; @@ -81,8 +79,7 @@ public class ViewResolverResultHandler implements HandlerResultHandler, Ordered return this.order; } - - // TODO: @ModelAttribute return value, declared Object return value (either String or View) + // TODO: Add support for model-related return value (Model, ModelAndView, @ModelAttribute) @Override public boolean supports(HandlerResult result) { diff --git a/spring-web-reactive/src/main/java/org/springframework/web/reactive/view/ViewResolverSupport.java b/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/ViewResolverSupport.java similarity index 94% rename from spring-web-reactive/src/main/java/org/springframework/web/reactive/view/ViewResolverSupport.java rename to spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/ViewResolverSupport.java index 7bafe058ec..fb4d2a0f72 100644 --- a/spring-web-reactive/src/main/java/org/springframework/web/reactive/view/ViewResolverSupport.java +++ b/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/ViewResolverSupport.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.springframework.web.reactive.view; +package org.springframework.web.reactive.result.view; import java.util.ArrayList; import java.util.List; @@ -25,7 +25,6 @@ import org.springframework.core.io.buffer.DataBufferAllocator; import org.springframework.core.io.buffer.DefaultDataBufferAllocator; import org.springframework.http.MediaType; import org.springframework.util.Assert; -import org.springframework.web.reactive.ViewResolver; /** * Base class for {@code ViewResolver} implementations with shared properties. @@ -33,7 +32,7 @@ import org.springframework.web.reactive.ViewResolver; * @author Rossen Stoyanchev * @since 4.3 */ -public abstract class ViewResolverSupport implements ViewResolver, ApplicationContextAware, Ordered { +public abstract class ViewResolverSupport implements ApplicationContextAware, Ordered { public static final MediaType DEFAULT_CONTENT_TYPE = MediaType.parseMediaType("text/html;charset=UTF-8"); diff --git a/spring-web-reactive/src/main/java/org/springframework/web/reactive/view/freemarker/FreeMarkerConfig.java b/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/freemarker/FreeMarkerConfig.java similarity index 95% rename from spring-web-reactive/src/main/java/org/springframework/web/reactive/view/freemarker/FreeMarkerConfig.java rename to spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/freemarker/FreeMarkerConfig.java index 6502f3e182..79653256ba 100644 --- a/spring-web-reactive/src/main/java/org/springframework/web/reactive/view/freemarker/FreeMarkerConfig.java +++ b/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/freemarker/FreeMarkerConfig.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.web.reactive.view.freemarker; +package org.springframework.web.reactive.result.view.freemarker; import freemarker.template.Configuration; diff --git a/spring-web-reactive/src/main/java/org/springframework/web/reactive/view/freemarker/FreeMarkerConfigurer.java b/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/freemarker/FreeMarkerConfigurer.java similarity index 98% rename from spring-web-reactive/src/main/java/org/springframework/web/reactive/view/freemarker/FreeMarkerConfigurer.java rename to spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/freemarker/FreeMarkerConfigurer.java index 5dc3901ea5..b812910282 100644 --- a/spring-web-reactive/src/main/java/org/springframework/web/reactive/view/freemarker/FreeMarkerConfigurer.java +++ b/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/freemarker/FreeMarkerConfigurer.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.web.reactive.view.freemarker; +package org.springframework.web.reactive.result.view.freemarker; import java.io.IOException; import java.util.List; diff --git a/spring-web-reactive/src/main/java/org/springframework/web/reactive/view/freemarker/FreeMarkerView.java b/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/freemarker/FreeMarkerView.java similarity index 98% rename from spring-web-reactive/src/main/java/org/springframework/web/reactive/view/freemarker/FreeMarkerView.java rename to spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/freemarker/FreeMarkerView.java index 9efd05265b..4ed672ece3 100644 --- a/spring-web-reactive/src/main/java/org/springframework/web/reactive/view/freemarker/FreeMarkerView.java +++ b/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/freemarker/FreeMarkerView.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.springframework.web.reactive.view.freemarker; +package org.springframework.web.reactive.result.view.freemarker; import java.io.FileNotFoundException; import java.io.IOException; @@ -36,7 +36,7 @@ import org.springframework.beans.factory.BeanFactoryUtils; import org.springframework.beans.factory.NoSuchBeanDefinitionException; import org.springframework.context.ApplicationContextException; import org.springframework.core.io.buffer.DataBuffer; -import org.springframework.web.reactive.view.AbstractUrlBasedView; +import org.springframework.web.reactive.result.view.AbstractUrlBasedView; import org.springframework.web.server.ServerWebExchange; /** diff --git a/spring-web-reactive/src/main/java/org/springframework/web/reactive/view/freemarker/FreeMarkerViewResolver.java b/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/freemarker/FreeMarkerViewResolver.java similarity index 91% rename from spring-web-reactive/src/main/java/org/springframework/web/reactive/view/freemarker/FreeMarkerViewResolver.java rename to spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/freemarker/FreeMarkerViewResolver.java index 631d6fbcd7..d8f9d8a97d 100644 --- a/spring-web-reactive/src/main/java/org/springframework/web/reactive/view/freemarker/FreeMarkerViewResolver.java +++ b/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/freemarker/FreeMarkerViewResolver.java @@ -13,9 +13,9 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.springframework.web.reactive.view.freemarker; +package org.springframework.web.reactive.result.view.freemarker; -import org.springframework.web.reactive.view.UrlBasedViewResolver; +import org.springframework.web.reactive.result.view.UrlBasedViewResolver; /** * A {@code ViewResolver} for resolving {@link FreeMarkerView} instances, i.e. diff --git a/spring-web-reactive/src/main/java/org/springframework/web/reactive/view/package-info.java b/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/package-info.java similarity index 54% rename from spring-web-reactive/src/main/java/org/springframework/web/reactive/view/package-info.java rename to spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/package-info.java index 602c2ea992..c789bb2632 100644 --- a/spring-web-reactive/src/main/java/org/springframework/web/reactive/view/package-info.java +++ b/spring-web-reactive/src/main/java/org/springframework/web/reactive/result/view/package-info.java @@ -1,4 +1,4 @@ /** * Support for result handling through view resolution. */ -package org.springframework.web.reactive.view; +package org.springframework.web.reactive.result.view; diff --git a/spring-web-reactive/src/test/java/org/springframework/web/reactive/result/method/annotation/RequestMappingIntegrationTests.java b/spring-web-reactive/src/test/java/org/springframework/web/reactive/result/method/annotation/RequestMappingIntegrationTests.java index 5075cdbed7..2be8ca1eb1 100644 --- a/spring-web-reactive/src/test/java/org/springframework/web/reactive/result/method/annotation/RequestMappingIntegrationTests.java +++ b/spring-web-reactive/src/test/java/org/springframework/web/reactive/result/method/annotation/RequestMappingIntegrationTests.java @@ -75,16 +75,20 @@ import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.client.RestTemplate; import org.springframework.web.reactive.DispatcherHandler; -import org.springframework.web.reactive.ViewResolver; import org.springframework.web.reactive.result.SimpleResultHandler; -import org.springframework.web.reactive.view.ViewResolverResultHandler; -import org.springframework.web.reactive.view.freemarker.FreeMarkerConfigurer; -import org.springframework.web.reactive.view.freemarker.FreeMarkerViewResolver; +import org.springframework.web.reactive.result.view.ViewResolver; +import org.springframework.web.reactive.result.view.ViewResolverResultHandler; +import org.springframework.web.reactive.result.view.freemarker.FreeMarkerConfigurer; +import org.springframework.web.reactive.result.view.freemarker.FreeMarkerViewResolver; import org.springframework.web.server.adapter.WebHttpHandlerBuilder; -import static org.junit.Assert.*; +import static org.junit.Assert.assertArrayEquals; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; + /** + * Integration tests with {@code @RequestMapping} methods. * @author Rossen Stoyanchev * @author Sebastien Deleuze * @author Stephane Maldini diff --git a/spring-web-reactive/src/test/java/org/springframework/web/reactive/view/UrlBasedViewResolverTests.java b/spring-web-reactive/src/test/java/org/springframework/web/reactive/result/view/UrlBasedViewResolverTests.java similarity index 95% rename from spring-web-reactive/src/test/java/org/springframework/web/reactive/view/UrlBasedViewResolverTests.java rename to spring-web-reactive/src/test/java/org/springframework/web/reactive/result/view/UrlBasedViewResolverTests.java index 1595dde4c2..c913427e6e 100644 --- a/spring-web-reactive/src/test/java/org/springframework/web/reactive/view/UrlBasedViewResolverTests.java +++ b/spring-web-reactive/src/test/java/org/springframework/web/reactive/result/view/UrlBasedViewResolverTests.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.springframework.web.reactive.view; +package org.springframework.web.reactive.result.view; import java.util.Locale; import java.util.Map; @@ -24,7 +24,6 @@ import reactor.core.publisher.Mono; import org.springframework.context.support.StaticApplicationContext; import org.springframework.core.io.buffer.DataBuffer; -import org.springframework.web.reactive.View; import org.springframework.web.server.ServerWebExchange; import static org.junit.Assert.assertNotNull; diff --git a/spring-web-reactive/src/test/java/org/springframework/web/reactive/view/ViewResolverResultHandlerTests.java b/spring-web-reactive/src/test/java/org/springframework/web/reactive/result/view/ViewResolverResultHandlerTests.java similarity index 97% rename from spring-web-reactive/src/test/java/org/springframework/web/reactive/view/ViewResolverResultHandlerTests.java rename to spring-web-reactive/src/test/java/org/springframework/web/reactive/result/view/ViewResolverResultHandlerTests.java index 8d6c2f38e3..1208a8e1ae 100644 --- a/spring-web-reactive/src/test/java/org/springframework/web/reactive/view/ViewResolverResultHandlerTests.java +++ b/spring-web-reactive/src/test/java/org/springframework/web/reactive/result/view/ViewResolverResultHandlerTests.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.springframework.web.reactive.view; +package org.springframework.web.reactive.result.view; import java.lang.reflect.Method; import java.net.URI; @@ -50,15 +50,16 @@ import org.springframework.ui.ExtendedModelMap; import org.springframework.ui.ModelMap; import org.springframework.web.reactive.HandlerResult; import org.springframework.web.reactive.HandlerResultHandler; -import org.springframework.web.reactive.View; -import org.springframework.web.reactive.ViewResolver; import org.springframework.web.server.ServerWebExchange; import org.springframework.web.server.adapter.DefaultServerWebExchange; import org.springframework.web.server.session.DefaultWebSessionManager; import org.springframework.web.server.session.WebSessionManager; import static org.hamcrest.CoreMatchers.endsWith; -import static org.junit.Assert.*; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertThat; +import static org.junit.Assert.assertTrue; import static org.mockito.Mockito.mock; diff --git a/spring-web-reactive/src/test/java/org/springframework/web/reactive/view/freemarker/FreeMarkerViewTests.java b/spring-web-reactive/src/test/java/org/springframework/web/reactive/result/view/freemarker/FreeMarkerViewTests.java similarity index 95% rename from spring-web-reactive/src/test/java/org/springframework/web/reactive/view/freemarker/FreeMarkerViewTests.java rename to spring-web-reactive/src/test/java/org/springframework/web/reactive/result/view/freemarker/FreeMarkerViewTests.java index 7123553d47..7d705a0ac0 100644 --- a/spring-web-reactive/src/test/java/org/springframework/web/reactive/view/freemarker/FreeMarkerViewTests.java +++ b/spring-web-reactive/src/test/java/org/springframework/web/reactive/result/view/freemarker/FreeMarkerViewTests.java @@ -13,12 +13,11 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.springframework.web.reactive.view.freemarker; +package org.springframework.web.reactive.result.view.freemarker; import java.net.URI; import java.nio.ByteBuffer; import java.nio.charset.Charset; -import java.util.HashMap; import java.util.Locale; import java.util.Optional; @@ -39,17 +38,14 @@ import org.springframework.http.server.reactive.MockServerHttpRequest; import org.springframework.http.server.reactive.MockServerHttpResponse; import org.springframework.ui.ExtendedModelMap; import org.springframework.ui.ModelMap; -import org.springframework.web.context.WebApplicationContext; import org.springframework.web.reactive.HandlerResult; import org.springframework.web.server.ServerWebExchange; import org.springframework.web.server.adapter.DefaultServerWebExchange; import org.springframework.web.server.session.DefaultWebSessionManager; import org.springframework.web.server.session.WebSessionManager; -import static org.hamcrest.CoreMatchers.containsString; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; -import static org.mockito.BDDMockito.given; import static org.mockito.Mockito.mock; /** diff --git a/spring-web-reactive/src/test/resources/org/springframework/web/reactive/view/freemarker/test.ftl b/spring-web-reactive/src/test/resources/org/springframework/web/reactive/result/view/freemarker/test.ftl similarity index 100% rename from spring-web-reactive/src/test/resources/org/springframework/web/reactive/view/freemarker/test.ftl rename to spring-web-reactive/src/test/resources/org/springframework/web/reactive/result/view/freemarker/test.ftl