在捆绑为WAR的spring boot / springwebflux应用程序中,无法从spring控制器返回index.html。

时间:2019-05-16 13:10:27

标签: spring spring-boot spring-mvc spring-webflux

我正在使用Spring Boot将Spring Boot / MVC应用程序迁移到Webflux。在我的控制器方法的前面,我曾经做过返回新的ModelAndView(“ WEB-INF / view / index.html”);使用@EnableWebMvc时,它工作正常,我的index.html文件在src / main / webapp / WEB-INF / view下。

现在,在迁移到Spring Boot 2和spring webflux之后,我做了以下更改。

  1. 创建一个实现WebFluxConfigurer并使用@EnableWebFlux注释的WebConfig类。
@Configuration . 
@EnableWebFlux . 
@ComponentScan . 
public class MvcConfiguration implements WebFluxConfigurer . 
{

}
  1. 现在在我的带有@Controller的控制器类中,我返回

返回Rendering.view(“ index”)。status(HttpStatus.OK).build();

根据文档,渲染与ModelAndView在Spring MVC中所做的相似,但是我收到错误,认为视图名称未解析。我将应用程序打包为WAR文件,而index.html文件位于src / main / webapp / WEB-INF / view下。有人可以让我知道我在这里做错了吗。

  

“时间戳”:“ 2019-05-16T10:18:45,686Z”,“级别”:“错误”,“线程”:23,“消息”:“ [3aa66863]   HTTP POST 500服务器错误   \“ / \”“,” logger“:” org.springframework.boot.autoconfigure.web.reactive.error.AbstractErrorWebExceptionHandler“,” X-B3-SpanId“:” 2119cab4151aa54d“,” X-B3-TraceId“:” 2119cab4151aa54d“,” X-Span-Export“:” false“,” spanExportable“:” false“,” spanId“:” 2119cab4151aa54d“,” traceId“:” 2119cab4151aa54d“,498d86514b78.1558001925680]”,“ throwable”:{ “ class”:“ java.lang.IllegalStateException”,“ msg”:“可以   无法解析名称为'index.html'的视图。”,“堆栈”:

用于HTML呈现的公共API。在Spring WebFlux控制器中支持作为返回值。与在Spring MVC控制器中将{@code ModelAndView}用作返回值相当。

0 个答案:

没有答案