gpt4 book ai didi

java - 用于静态 html 文件和默认路径的 Spring Dispatcher servlet

转载 作者:行者123 更新时间:2023-12-01 23:16:48 24 4
gpt4 key购买 nike

Spring 3.1.4Java 1.7

我有一个为所有网址配置了 DispatcherServlet 的 Web 应用程序。他们中的大多数都会有 map 。应用程序中有一些静态文件,当我使用 http://host:port/myapp/index.html 访问时,可以正确显示 web 目录下的 index.html 的内容。我通过在 myapp-servlet.xml 中使用以下代码片段来实现此目的

<mvc:default-servlet-handler/>

预计当访问网址http://host:port/myapp时,将呈现默认的index.html,因为我的网站中有以下内容.xml

<servlet-mapping>
<servlet-name>myapp</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>

然而,情况似乎并非如此,即,除非在 URL 中指定了 index.html,否则 DispatcherServlet 无法正确解析它。有人能告诉我如何实现这一目标吗?服务器日志告诉我以下内容

o.a.c.c.C.[.[.[/myapp] - servletPath=null, pathInfo=null, queryString=null, name=default
o.a.c.c.C.[.[.[/myapp] - Named Dispatcher Forward
o.a.c.c.C.[.[.[/myapp] - Disabling the response for futher output
o.s.web.servlet.DispatcherServlet - Null ModelAndView returned to DispatcherServlet with name 'myapp': assuming HandlerAdapter completed request handling
o.s.web.servlet.DispatcherServlet - Successfully completed request

最佳答案

Servlet 优先于 <welcome-file-list> ,所以在这种情况下 <welcome-file-list>不会有任何影响,因为 DispatcherServlet恐怕会消耗所有请求。

解决方案很简单,只需为 Spring 中的默认路径添加映射和将 View 发送到 index.html 的 Controller 操作即可。 .

关于java - 用于静态 html 文件和默认路径的 Spring Dispatcher servlet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21097065/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com