Struts2中配置默认Action

Struts2中配置默认Action

一、jsp默认设置

1、当访问的Action不存在时,页面会显示错误信息,可以通过配置默认Action处理用户异常的操作;

2。配置方法:
在struts.xml文件中的下添加如下内容:

    <default-action-ref name="index"></default-action-ref>

其中index为默认Action的name属性值;

3、配置默认Action后,相应的namespace下不存在要访问的Action时,自动跳转到默认Action处理。

4、实例

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="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:

<?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:

<%@ 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%>">
      
   <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">
   -->
  </head>
   
 <body>
    Welcome to Magci's BLOG!<br />
    <a href="magci/magc">magci/magc</a><br />
    <a href="mgc/magc/magci/123456">mgc/magc/magci/123456</a><br />
  </body>
</html>

二、action默认设置转发

<!-- 默认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>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hello-java-maker

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值