一、jsp默认设置
1、当访问的Action不存在时,页面会显示错误信息,可以通过配置默认Action处理用户异常的操作;
2。配置方法:
在struts.xml文件中的下添加如下内容:
1
|
< default-action-ref name = "index" ></ default-action-ref > |
其中index为默认Action的name属性值;
3、配置默认Action后,相应的namespace下不存在要访问的Action时,自动跳转到默认Action处理。
4、实例
web.xml:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
<? 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="http://java.sun.com/xml/ns/javaee ; http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> < welcome-file-list > < welcome-file >hello.jsp</ welcome-file > </ welcome-file-list > < 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 > </ filter-mapping > </ web-app > |
struts.xml:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
<? xml version = "1.0" encoding = "UTF-8" ?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"> < struts > <!-- <constant name="struts.enable.DynamicMethodInvocation" value="false" /> <constant name="struts.devMode" value="false" /> <include file="example.xml"/> <package name="default" namespace="/" extends="struts-default"> <default-action-ref name="index" /> <action name="index"> <result type="redirectAction"> <param name="actionName">HelloWorld</param> <param name="namespace">/example</param> </result> </action> </package> --> <!-- Add packages here --> < constant name = "struts.devMode" value = "true" /> < constant name = "struts.i18n.encoding" value = "GBK" ></ constant > < package name = "user" namespace = "/" extends = "struts-default" > < default-action-ref name = "index" ></ default-action-ref > < action name = "index" > < result >/index.jsp</ result > </ action > </ package > </ struts > |
index.jsp:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
<%@ page language= "java" import = "java.util.*" pageEncoding= "GB18030" %> <% String path = request.getContextPath(); String basePath = request.getScheme()+ "://" +request.getServerName()+ ":" +request.getServerPort()+path+ "/" ; %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" > <html> <head> <base href= "<%=basePath%>" rel= "external nofollow" > <title>Index</title> <meta http-equiv= "pragma" content= "no-cache" > <meta http-equiv= "cache-control" content= "no-cache" > <meta http-equiv= "expires" content= "0" > <meta http-equiv= "keywords" content= "keyword1,keyword2,keyword3" > <meta http-equiv= "description" content= "This is my page" > <!-- <link rel= "stylesheet" type= "text/css" href= "styles.css" rel= "external nofollow" > --> </head> <body> Welcome to Magci's BLOG!<br /> <a href= "magci/magc" rel= "external nofollow" >magci/magc</a><br /> <a href= "mgc/magc/magci/123456" rel= "external nofollow" >mgc/magc/magci/ 123456 </a><br /> </body> </html> |
二、action默认设置转发
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
<!-- 默认action --> < default-action-ref name = "index" /> < action name = "index" > < result type = "redirectAction" > < param name = "actionName" >page_toIndex</ param > <!-- <param name="namespace">/example</param> --> </ result > </ action > < action name = "page_*" class = "indexAction" method = "{1}" > < result name = "toIndex" >/WEB-INF/jsps/index.jsp</ result > < result name = "toAdminLogin" >/WEB-INF/jsps/admin/admin_login.jsp</ result > <!-- ajax --> < result name = "ajaxInsertOneCallback" type = "json" > < param name = "root" >action</ param > </ result > </ action > |
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:http://blog.csdn.net/sihai12345/article/details/73381783