Action包和命名空间
<package />
属性:
name:指定包的名称(必选)
extends:指定继承的包,可继承到拦截器,action等配置
namespace:指定包的命名空间
abstract:抽象包不能含有action的定义
namespace
提供命名空间,用于处理同一web应用下有同名的action。
访问namespace需在url加上该路径。
默认命名action可以处理任何命名空间下的action请求,根命名空间下的action只处理该空间下的action请求。先查找对应命名空间下的action,无则再到默认命名空间下找。
命名空间只有一个级别,/001/002/a.action,只找/001/002/下的a的action,无则到默认。
Action的动态方法调用
action=ActionName!methodName
提交到名为ActionName这个action,使用方法methodName处理。
使用动态方法调用必须设置struts2常量允许动态方法调用。
设置struts.enable.DynamciMethodInvocation常量为true
对于*匹配,*Action与*对xxxAction并无优先级可言,按出现顺序匹配。
配置默认action
<default=action-ref name=”ActionName” />
<action name=”ActionName” class=”ActionClass” />
配置action的默认处理类
<default-class-ref class=”com.opensymphony.xwork2.ActionSupport” />