java - Spring MVC default-servlet-handler 配置阻塞 JSTL View

标签 java spring spring-mvc tomcat static-resource

我有简单的Spring配置

<bean id="viewResolver"
    class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <property name="prefix">
        <value>/pages/</value>
    </property>
    <property name="suffix">
        <value>.jsp</value>
    </property>
</bean>

<!-- Scan for components under this package -->
<context:component-scan base-package="com.osfg.test" />

我的 Controller 是

package com.osfg.test;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;

/**
 * @author athakur
 */
@Controller
public class TestController {

    @RequestMapping(value="/test", method=RequestMethod.GET)
    public String welcome() {
        return "test";
    }

}

我的JSP是

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>OSFG Test Page</title>
<link href="CSS/test.css" rel="stylesheet">
</head>
<body>

<h1>Hello World!</h1>

</body>
</html>

此配置工作正常(尽管未应用 CSS)。 enter image description here

所以我补充

<mvc:default-servlet-handler />

到我的 Spring 配置,现在页面本身停止加载并给出 404。

同样令人惊讶的是,一切正常(使用 CSS)都将遵循配置

<mvc:view-controller path="/test" view-name="test"/>
<mvc:default-servlet-handler />

直接渲染,不涉及 Controller 。

最佳答案

我认为对资源进行简单的配置就足够了。

<mvc:resources mapping="/resources/**" location="/resources/" />

关于java - Spring MVC default-servlet-handler 配置阻塞 JSTL View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34471043/

相关文章:

java - Spring Boot 不提供静态内容(Angular-CLI)来为 Tomcat 上的应用程序提供服务

java - 并发编程是更加网格化还是更加集群化?

java - Spring 数据 JPA : A transaction with isolation READ_COMMITTED does not see data committed in another transaction

javascript - 如何在不使用任何模型的情况下将多选值从 JSP 传递到 Controller

java - org.springframework.beans.factory.CannotLoadBeanClassException : Cannot find class [com. Dao.ApplicationDaoImpl] 对于名称为'的bean

Spring、Hibernate 事务。加入 A 中创建的线程 B 中的事务。可能吗?

java - 我应该如何检查 BufferedWriter 是否已经关闭?

java - Integer.valueOf() 在迭代器中找不到符号

java - 错误 : java. sql.SQLSyntaxErrorException:用户缺乏权限或未找到对象:ACCOUNTS

java - 创建名称为 '...RedisHttpSessionConfiguration' 的 bean 时出错 : Initialization of bean failed