如何将欢迎页面设置为支柱操作?

2022-09-01 03:07:46

我有一个基于支柱的web应用程序,我希望默认的“欢迎”页面是一个操作。我发现的唯一解决方案似乎是使欢迎页面成为包含重定向到操作的JSP的变化。例如,在:web.xml

<welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
</welcome-file-list>

和 在 :index.jsp

<% 
  response.sendRedirect("/myproject/MyAction.action");
%> 

当然有更好的方法!


答案 1

就个人而言,我会保持与现在相同的设置,但会更改转发的重定向。这样可以避免将标头发送回客户端并让他们发出另一个请求。

所以,特别是,我会替换

<% 
  response.sendRedirect("/myproject/MyAction.action");
%>

在索引中.jsp与

<jsp:forward page="/MyAction.action" />

此更改的另一个影响是,用户不会看到地址栏中的 URL 从“http://server/myproject”更改为“http://server/myproject/index.jsp”,因为转发发生在服务器内部。


答案 2

这是一个相当古老的话题,但我认为所讨论的主题仍然相关。我使用支柱标签 - s:action来实现这一点。我创建了一个索引.jsp在其中我写了这个...

<s:action name="loadHomePage" namespace="/load" executeResult="true" />