当前位置: 首页 > 知识库问答 >
问题:

没有视图解析器但纯html的spring

皇甫树
2023-03-14

我试图将spring配置为仅使用我的html文件而不是jsp视图解析器,但无法使其工作。我尝试了许多不同的配置,只是希望每次输入localhost:8080/时重定向到/web-inf/views/index.html。现在我在tomcat控制台中的内容是:

PageNotFound-在名为“app servlet”的DispatcherServlet中未找到URI为[/web-inf/views/index.html]的HTTP请求的映射。

下面是我的servlet-context.xml片段。

<beans:bean
    class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <beans:property name="prefix" value="WEB-INF/views/" />
    <beans:property name="suffix" value="" />
</beans:bean>
<view-controller path="/" view-name="index.html"/>

有什么建议吗?我错过了什么?

编辑-web.xml:

<?xml version="1.0" encoding="UTF-8"?>

http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd“>

<!-- The definition of the Root Spring Container shared by all Servlets 
    and Filters -->
<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>/WEB-INF/spring/root-context.xml</param-value>
</context-param>
<filter>
    <filter-name>springSecurityFilterChain</filter-name>
    <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
</filter>
<filter-mapping>
    <filter-name>springSecurityFilterChain</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

<!-- Creates the Spring Container shared by all Servlets and Filters -->
<listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

<!-- Processes application requests -->
<servlet>

    <servlet-name>appServlet</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>/WEB-INF/spring/appServlet/servlet-context.xml</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
    <servlet-name>appServlet</servlet-name>
    <url-pattern>/</url-pattern>
</servlet-mapping>
<welcome-file-list>
    <welcome-file>/WEB-INF/views/index.html</welcome-file>
</welcome-file-list> 

null

共有2个答案

史昀
2023-03-14

此错误

org.springframework.web.servlet.PageNotFound - No mapping found for HTTP request with URI [/WEB-INF/views/index.html] in DispatcherServlet with name 'appServlet'.

正在告诉我们你实际上要去下面的地址

localhost:8080/WEB-INF/views/index.html

这显然毫无意义。

如果你愿意

每次输入localhost:8080/时重定向到/web-inf/views/index.html

向部署描述符中添加欢迎文件。

<welcome-file-list>
    <welcome-file>WEB-INF/views/index.html</welcome-file>
</welcome-file-list>
周飞
2023-03-14

我知道这是一个古老的问题,所以这是给现在来到这里的人的。spring是自动配置的,只要您的文件路径正确,就可以拾取您的视图,所以您不需要做任何spring webmvc配置

我在Intellij中遇到了这个问题,只需重新启动应用程序,错误就消失了。希望有人看到这个,不要花几个小时在这个上面。

 类似资料:
  • MVC提供的配置简化了视图解析器的注册工作。 以下的代码展示了在MVC Java编程配置下,如何为内容协商配置FreeMarker HTML模板和Jackson作为JSON数据的默认视图解析: @Configuration @EnableWebMvc public class WebConfig extends WebMvcConfigurerAdapter { @Override

  • 主要内容:视图,视图的分类,视图解析器,同时配置多个视图解析器,视图控制器Spring MVC 的控制器方法支持 ModelAndView、ModelMap、View、String 多种类型的返回值,但无论控制器方法的返回值是哪种类型,Spring MVC 内部最终都会将它们封装成一个 ModelAndView 对象。 ModelAndView 对象由 model(模型数据)和 view(视图)两部分组成,但这里的 view 通常并不是一个真正的 View 视图对象,而

  • 问题内容: 我尝试使用2个视图解析器: 该应用程序始终仅使用顺序最低的一个,而不使用另一个。在当前情况下,如果我的控制器返回“ someView”,则The requested resource (/MyProject/WEB-INF/views/someView.jsp) is not available.即使存在“ pages / someView.xhtml” ,应用也会响应。 Spring

  • 所有web应用的MVC框架都提供了视图相关的支持。Spring提供了一些视图解析器,它们让你能够在浏览器中渲染模型,并支持你自由选用适合的视图技术而不必与框架绑定到一起。Spring原生支持JSP视图技术、Velocity模板技术和XSLT视图等。你可以阅读文档的第22章 视图技术一章,里面讨论了如何集成并使用许多独立的视图技术。 有两个接口在Spring处理视图相关事宜时至关重要,分别是视图解析

  • 在Android上使用phonegap创建了一个应用程序。 一切都很好,除了视频不会以任何形式播放。只有音频。 错误: E/libEGL(1441):在没有当前上下文的情况下调用OpenGL ES API(每个线程记录一次) 尝试使用非嵌入式视频,不同的格式,不同的嵌入,改变config.xml设置,基本上大约30-40种不同的解决方案。并且已经为此工作了40多个小时。 大约11个月前,我在Pho

  • 14.5. 视图与视图解析 所有web应用的MVC框架都有它们处理视图的方式。Spring提供了视图解析器供你在浏览器显示模型数据,而不必被束缚在特定的视图技术上。Spring内置了对JSP,Velocity模版和XSLT视图的支持。 第 15 章 集成视图技术这一章详细说明了Spring如何与不同的视图技术集成。 ViewResolver和View是Spring的视图处理方式中特别重要的两个接口