【发布时间】:2025-11-29 21:15:01
【问题描述】:
我使用 Web Flow 和 JSF,所以它们实际上运行良好。但我正在尝试寻找与在 index.html 上重定向不同的设置默认页面的替代方法。
主要问题是网络分析脚本无法正常工作。我无法在主页前跟踪用户来源。
应用程序在 Tomcat 8 上运行
Web.xml
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
index.html
<html>
<head>
<meta http-equiv="Refresh" content="0; URL=web/home-page">
</head>
</html>
更新:
我将 index.html 替换为 index.jsp,并将响应状态设置为 301。至少它适用于 google 分析,所以我会检查一下其他分析工具。 但是这个解决方案仍然没有让我满意。
Web.xml
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
index.jsp
<%
response.setStatus(301);
String path=(String)request.getAttribute("javax.servlet.forward.request_uri");
if(path==null){
path="web/home-page";
}
response.setHeader( "Location", path);
response.setHeader( "Connection", "close" );
%>
【问题讨论】:
-
我对Spring Web Flow不熟悉,为什么不能在
welcome-file中指定想要的文件? -
感谢您的建议,但它不能像 JSF 那样使用表达式并且其他功能不起作用。它不只是呈现简单的 HTML。
-
@erdoganonur 你在用spring security项目吗?
-
是的,我正在使用 sprin security 3.2.4 和 web flow 2.4.0
-
@erdoganonur 是的,您的 viewframe 工作不知道如何解析欢迎文件。我打算建议使用 spring security 项目来处理请求的路由来替代欢迎文件的功能。这样,在本例 JSF 中,任何由 Spring Security 执行的对任何视图的重定向都将被您的视图框架拾取。 Spring 安全项目在这方面是相当模块化的。
标签: jsf jsf-2 web.xml spring-webflow spring-webflow-2