在我基于struts2
的应用程序中,我需要包含工作模板(一个jsp文件)。我已经设计了布局并且已经完成了所有工作。应用程序的一部分将在整个应用程序中发生变化,即工作区域。 / p>
在我的index.jsp
文件中,我需要包含数据库驱动的菜单,我需要点击action
我认为的一种方式就像使用
<META HTTP-EQUIV="Refresh" CONTENT="0;URL=welcome.action">
在我的index.jsp
的主管部分,但我不想在我的应用程序的第一个位置重定向。
还有其他方法可以达到这个目的吗?
答案 0 :(得分:1)
这是一种正常的做法;没错。
另一种方法是将操作定义为欢迎页面,但您需要根据this SO answer在过滤器上定义调度程序元素。
答案 1 :(得分:0)
在您的web-content文件夹中创建一个空文件名welcome。将follwinf条目添加到您的web.xml
<filter>
<filter-name>action2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>action2</filter-name>
<url-pattern>/*</url-pattern>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
<dispatcher>INCLUDE</dispatcher>
<dispatcher>ERROR</dispatcher>
</filter-mapping>
将web.xml中的欢迎列表文件替换为
<welcome-file-list>
<welcome-file>welcome</welcome-file>
</welcome-file-list>
最后在strus.xml中执行类似
的操作<action name="welcome" class="welcome.action">
<result>/index.jsp</result>
</action>
我们要做的是当我们点击example.com
而不是显示欢迎jsp文件时,我们正在执行操作并使用其结果。在这种情况下,您的网址将保持相同,如www.mysite.com