Spring框架的圆形视图路径异常

ken*_*ter 7 java eclipse spring-mvc maven spring-boot

基本上,访问"/"和"/ a"正在浏览器上工作.Acess"/ testme"无效.错误是

2016-03-13 15:04:37.709 ERROR 1933 --- [io-8080-exec-57] osboot.context.web.ErrorPageFilter:由于异常而转发到请求[/ testmenull]的错误页面[圆形视图路径[ testme.html]:将再次发送回当前处理程序URL [/XXXX/testme.html].检查您的ViewResolver设置!(提示:由于默认的视图名称生成,这可能是未指定视图的结果.)]

我做一个字符串grep,但找不到"ViewResolver".我不知道为什么"/"和"/ a"有效.任何的想法?

查看图片了解更多: 在此输入图像描述

所有xml文件: 在此输入图像描述

的pom.xml

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.xxxxx</groupId>
  <artifactId>Monitor</artifactId>
  <packaging>war</packaging>
  <version>1.0-SNAPSHOT</version>
  <!--<name>Monitor</name>-->
  <url>http://maven.apache.org</url>

  <parent>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-parent</artifactId>
      <version>1.1.9.RELEASE</version>
  </parent>

  <dependencies>
      <dependency>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-web</artifactId>
      </dependency>
      <dependency>
          <groupId>javax.websocket</groupId>
          <artifactId>javax.websocket-api</artifactId>
          <version>1.1</version>
          <scope>provided</scope> <!--for web socket-->
      </dependency>
      <dependency>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-data-jpa</artifactId>
      </dependency>
      <dependency>
          <groupId>mysql</groupId>
          <artifactId>mysql-connector-java</artifactId>
          <version>5.1.31</version>
      </dependency>
      <dependency>
          <groupId>org.springframework.hateoas</groupId>
          <artifactId>spring-hateoas</artifactId>
      </dependency>
      <dependency>
          <groupId>com.google.code.gson</groupId>
          <artifactId>gson</artifactId>
          <version>2.3</version>
      </dependency>
      <dependency>
          <groupId>com.fasterxml.jackson.core</groupId>
          <artifactId>jackson-databind</artifactId>
      </dependency>
      <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>3.8.1</version>
        <scope>test</scope>
      </dependency>
  </dependencies>

  <build>
      <finalName>Monitor</finalName>
      <plugins>
          <plugin>
              <groupId>org.apache.maven.plugins</groupId>
              <artifactId>maven-compiler-plugin</artifactId>
              <version>3.1</version>
              <configuration>
                  <compilerVersion>1.7</compilerVersion>
                  <source>1.7</source>
                  <target>1.7</target>
              </configuration>
          </plugin>
          <plugin>
              <groupId>org.springframework.boot</groupId>
              <artifactId>spring-boot-maven-plugin</artifactId>
          </plugin>
          <!--<plugin>-->
              <!--<groupId>org.apache.maven.plugins</groupId>-->
              <!--<artifactId>maven-source-plugin</artifactId>-->
              <!--<executions>-->
                  <!--<execution>-->
                      <!--<id>attach-sources</id>-->
                      <!--<goals>-->
                          <!--<goal>jar</goal>-->
                      <!--</goals>-->
                  <!--</execution>-->
              <!--</executions>-->
          <!--</plugin>-->
      </plugins>
      <resources>
          <resource>
              <directory>${basedir}/src/main/resources</directory>
          </resource>
          <resource>
              <directory>${basedir}/src/main/java</directory>
          </resource>
      </resources>
  </build>
</project>
Run Code Online (Sandbox Code Playgroud)

web.xml中

<!DOCTYPE web-app PUBLIC
 "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
 "http://java.sun.com/dtd/web-app_2_3.dtd" >

<web-app>
  <display-name>Archetype Created Web Application</display-name>
</web-app>
Run Code Online (Sandbox Code Playgroud)

Bol*_*-CS 16

@RequestMapping的值是"testme",return的值也是"testme",因此当您访问"/ testme"时,Web将再次重定向到"/ testme".这将导致无限重定向到"/ testme".


小智 7

如果您正在使用gradle,则必须添加: compile("org.springframework.boot:spring-boot-starter-thymeleaf"),或者maven找到此依赖项.


小智 6

尝试了以上所有建议,但对我不起作用。但是,当我将控制器类上的注释从@Controller更改为@RestController(这是@Controller和@ResponseBody的组合)时,此问题已解决。