struts2设置index.action为主页(另:web.xml编辑卡死问题解决)

本来是弄拦截器的问题,结果弄主页的时候,还是发现了问题。

公司网站的项目里面,是用index.action作为主页的,访问WEB-INF里面的html文件。可是我设置的却不成功,追根到底,一个原因,struts2比较特殊,struts.xml里面必须多配置一个request和response。


<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_9" version="3.0" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_3_0.xsd">

<display-name>Struts Blank</display-name>

<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>

<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>

<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
</filter-mapping>

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

</web-app>

这样就可以轻松使用index.action作为主页。

另外这样配置后,也可以用jsp里面加forward来跳转到index.action作为主页。也可以用html里面加一个<meta>标签刷新跳转到主页action里面。

不经过request和response,只能用html加<meta>标签的方式。

另:eclipse编辑web.xml的时候,总是卡死,是因为xml头版本的问题,里面的版本数字要一致。

<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_9" version="3.0" xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_3_0.xsd">

如上,都是3.0的。

struts2设置index.action为主页(另:web.xml编辑卡死问题解决),布布扣,bubuko.com

时间: 2024-10-24 10:04:18

struts2设置index.action为主页(另:web.xml编辑卡死问题解决)的相关文章

struts2不同版本在核心filter在web.xml中的配置

FilterDispatcher是struts2.0.x到2.1.2版本的核心过滤器.配置如下: <filter> <filter-name>struts2</filter-name> <filter-class> org.apache.struts2.dispatcher.FilterDispatcher </filter-class> </filter> <filter-mapping> <filter-name

struts2 ,web.xml中配置为/*.action,运行报错Invalid &lt;url-pattern&gt; /*.action in filter mapp

首先,修改成: <filter-mapping>  <filter-name>struts2</filter-name>  <url-pattern>/*</url-pattern></filter-mapping> 是可以的. 引起此错误的原因如下: 这个对filter的基础知识的理解:容器只认 全名匹配,路径匹配,扩展名匹配./*.action  又是路径匹配,有时扩展名匹配. 容器没办法区分 解决方法:写*.action <

Tomcat设置默认启动项目及Java Web工程设置默认启动页面

Tomcat设置默认启动项目 Tomcat设置默认启动项目,顾名思义,就是让可以在浏览器的地址栏中输入ip:8080,就能访问到我们的项目.具体操作如下: 1.打开tomcat的安装根目录,找到Tomcat 6.0\conf\server.xml,打开该文件,找到<Host>节点,在该节点中添加<Context path="" docBase="../webapps/WebTest" debug="0" reloadable=&

Struts2 设置global timer

设置全局的timer需要在web.xml中添加servlet, 并设置load-on-startup 为 1, 然后在servlet的init()中开启timer, 具体代码如下: 1. web.xml <servlet> <servlet-name>backup</servlet-name> <servlet-class>locationService.backup.Backup</servlet-class> <load-on-star

struts2配置文件的加载顺序以及 struts.xml package 的配置说明

查看StrutsPrepareAndExecuteFilter:(核心过滤器)两个功能 :预处理 和 执行 在预处理功能中 init 方法中会有加载配置文件的代码: dispatcher.init(); init_DefaultProperties(); // [1]                  ---- 加载org.apache.struts.default.properties.配置的是struts2的所有常量. init_TraditionalXmlConfigurations();

Web.xml 中加入log4j

配置文件如下.web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=&quo

web.xml基本配置描述

先加载一段写好的web.xml: <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd" > <web-app> <display-name>Archetype Created Web Application</display-name

web.xml 模板和Servlet版本

最近没事干,写自己小项目(项目周期无限长.开发效率无限低)的时候,遇到web.xml的dtd声明不正确,这里罗列下从Eclipse里新建项目时,自动生成的web.xml,供以后遇到类似问题的时候进行参考.当然web.xml.Servlet版本.JSP版本.HTTP版本之间有着诸多联系,笔者不太懂,就不多说了. web.xml web.xml 3.0 <?xml version="1.0" encoding="UTF-8"?> <web-app xm

cxf , struts+spring中web.xml过滤url问题解决方案

在项目中配置webservice,查找wsdl时总是提示"HTTP Status 404 - There is no Action mapped for namespace / and action name ...",原来是因为web.xml中struts过滤器StrutsPrepareAndExecuteFilter自动拦截了该url的问题. 解决方案: 在struts.xml中增加一行: <constant name="struts.action.excludeP