`
xiushan
  • 浏览: 31326 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

struts1.3 配置文件之action

 
阅读更多

action元素的所有配置会被映射到ActionMapping对象中。

下面是action元素的每个属性的作用描述:

attribute

在struts将JSP页面的表单对象封装成一个ActionForm对象后,会将这个ActionForm对象保存在request作用域中或者session作用域中,attribute属性就是作为key被存储到作用域中。

在JSP页面可以直接使用EL表达式去获取ActionForm对象:

${requestScope.对象名.属性}

或者

${sessionScope.对象名.属性}

这里的对象名就是attribute属性定义的值。

注意 :当action元素中定义了name属性后,attribute属性的值将被忽略。

如果当前action需要用到ActionForm时,name属性是必须的,attribute属性就是非必须的。

一般情况下,attribute属性值与name属性值的值相同。

cancellable

可 取的值为:true,false,yes,no。在JSP页面的表单中,<html:cancel />标签允许退出当前Action,如果cancellable属性值为真(true,yes),则一切正常。如果cancellable属性为假 (false,no),则点击cancel按钮后发生org.apache.struts.action.InvalidCancelException 异常。

默认为false。

catalog

The name of a commons-chain catalog in which to look up a command to be executed as part of servicing this request. Only meaningful if "command" is also specified.

className

某个实现ActionMapping类的子类的全路径名(包括包名)。可以自定义一个ActionMapping的子类。

默认为<action>元素的父节点<action-mappings>的type属性,如果未定义则默认为org.apache.struts.action.ActionMapping

command

The name of a commons-chain command which should be looked up and executed as part of servicing this request.

extends

The path of the ActionConfig that this object should inherit properties from.

forward

某个servlet或者jsp页面或者其他资源的相对路径。如果使用了forward属性,则当前action被触发时,会跳转到forward属性指定的资源,不会继续进行处理,当然也会忽略type属性。

<action path="/login" forward="/form/login.jsp" />

当 用户访问"/login.do"时,会forward到"/form/login.jsp"页面,Struts内部会使用 RequestDispatcher.forward()方法。这是一个很好的隐藏JSP页面的真实路径方法。可以将JSP页面放在WEB-INF目录 下,这样只能通过"*.do"或者被Action调用的形式访问。

include

作用同forward属性,可以包含某个资源,内部是通过RequestDispatcher.include()方法实现。 同样会忽略type属性。

input

当前action的提交页面路径(默认)或者其他资源的相对路径。使用ActionMapping.getInputForward()可以返回input属性指定的资源路径。

当FormBean的验证方法vaildate返回不为null的ActionErrors时,将返回input属性指定的路径,如果没有指定input属性,将抛出异常(java.lang.IllegalArgumentException: The path of an ForwardConfig cannot be null

当在action元素中定义了name属性时,input属性是必须定义的。

name

FormBean的name,应该与<form-bean>元素中的name属性相同,这样才能将FormBean与当前action绑定起来。

如果有了name属性,则必须定义input属性。

attribute属性与name属性类似,但是name是必须的,attribute不是必须的。

Action是通过name属性去寻找自己的FormBean,而不是attribute属性。

parameter

此 属性结合DispatchAction类使用。当parameter属性值为method,则访问链接"/userAction?method=add" 时,在继承了DispatchAction的Action类中会调用自定义的add方法。实现不同的操作,自动调用不同的业务处理方法。不用手动去写if else代码了。

具体,请参看《Struts1.X-DispatchAction类-根据请求参数实现业务分派》

path

以"/"开头,不带文件扩展名的路径,Struts根据path属性来选择相应的Action处理用户的请求。比如当某个请求地址为"show.do",则path属性应该为"/show",这样才能找到合适的Action处理用户的请求。

prefix

指 定填充当前 Action 关联 FormBean 时 ,要添加到请求参数名称的前缀,因此,如果请求参数名为 "username" 并且 prefix 属性被设置为 "search" ,则将对 FormBean 调用一个名为 setSearchUsername() 的方法,只有指定了 name 属性,本属性才有效

roles

以逗号分割的一段role角色名,只有这些角色才能访问当前Action,其他用户访问后会抛出【org.apache.struts.chain.commands.UnauthorizedActionException】异常。

scope

FormBean的作用域,可取的值为request和session,默认为session。如果未定义name属性,则这个属性也就么意义了。

suffix

作用同prefix,suffix为后缀,prefixx为前缀。

type

完整的类名,包括包名,此类应该是org.apache.struts.action.Action类的子类。如果定义了forward属性或者include属性,则type属性被忽略。

unknown

可取的值:true,false,yes,no。当为真时(true,yes),当前这个Action将处理所有未找到相应处理Action的请求。只能有一个Action的unknown属性为真。默认为false。

validate

可取的值:true,false,yes,no。当为真时(true,yes),在进入Action处理类前,是否调用ActionForm Bean的validate()方法对表单数据进行验证。默认为true。

分享到:
评论

相关推荐

    struts1.3.jar

    3. **配置文件**:`struts-config.xml`是Struts 1.3的主要配置文件,它定义了Action的映射、数据源、以及与视图的关联。在该文件中,你可以设置Action的路径、输入页面、转发和异常处理。 4. **标签库**:Struts ...

    struts1.3用户指南

    3. **配置文件**:Struts1.3的配置主要在struts-config.xml文件中进行,包括Action的配置、Form Bean的定义、Action Mapping的设定等,这是整个框架运行的基础。 4. **Form Bean**:用于封装用户的输入数据,与JSP...

    struts1.3 入门级例子

    1. **Action**: 在Struts1.3中,Action类是处理用户请求的核心组件。当用户通过表单提交数据时,请求会被转发到对应的Action。Action负责业务逻辑的处理,例如验证数据、调用服务层方法等,并最终决定控制流程走向,...

    struts1.3 jar包

    同时,还需要配置Struts配置文件(struts-config.xml),定义Action类、ActionForm以及它们之间的映射关系。通过这种方式,Struts框架会根据用户请求自动调用相应的Action,执行业务逻辑,并将结果传递给视图层进行...

    struts1.3+spring3.0+hibernate3.3简单项目示例

    在Struts1.3中,ActionForm对象用于接收和验证用户输入,Action类处理业务逻辑,而配置文件(struts-config.xml)则定义了请求与Action间的映射关系。 2. Spring3.0: Spring是另一个核心Java框架,它提供了一个...

    struts是1.3API

    4. **配置文件(struts-config.xml)**:这是Struts应用的主要配置文件,定义了Action、ActionForm、ActionMapping以及Dispatcher的配置。在这里,你可以定义每个Action的映射、表单Bean以及结果视图。 5. **Tiles*...

    Struts1.3API

    6. **Interceptor**:拦截器是Struts1.3中的一个重要概念,它允许在Action调用前后插入自定义逻辑,如日志、事务管理和验证。 7. **Validator Framework**:提供表单验证功能,允许开发者定义XML规则文件,检查用户...

    配置 struts1.3

    - 该框架的核心组件包括ActionForm、Action、ActionServlet、Struts配置文件(struts-config.xml)、JSP标签库等。 2. **配置文件struts-config.xml** - `struts-config.xml`是Struts框架的核心配置文件,它定义...

    学习Struts1.3的相关jar包和API

    此外,struts-config.xml文件还用于配置ActionForm、Action、Forward等,它是Struts应用的核心配置文件。 ActionForm类是业务逻辑与表现层之间的桥梁,它的validate()方法用于验证用户输入,而set/property()方法则...

    Ibatis2.3+Struts1.3+Spring2.5 整合实例代码

    Struts1.3版本引入了许多改进,如ActionServlet的增强、Tiles视图管理、国际化支持等,使得开发人员能够更加容易地构建和管理Web应用。在本实例中,Struts负责处理HTTP请求,调用业务逻辑,并将结果传递给视图层。 ...

    Struts1.3 api函数

    2. **配置文件**:`struts-config.xml`是Struts框架的主要配置文件,它定义了Action的映射、Form Bean的配置、数据源设置等。开发者通过修改此文件可以定制Struts的行为。 3. **Tiles框架集成**:Struts1.3集成了...

    struts1.3 api文档

    2. **配置文件**:Struts 配置文件(通常为 `struts-config.xml`)是应用程序的核心配置,用于定义动作映射、数据源、表单 bean、结果转发等。 3. **Form Beans**:表单bean(也称为 ActionForm)用于在控制器和...

    struts1.3页面跳转问题

    在Struts1.3中,页面跳转是常见的需求,它涉及到Action类、配置文件(struts-config.xml)以及JSP页面间的交互。本篇文章将深入探讨Struts1.3中的页面跳转机制及其相关知识点。 首先,页面跳转在Struts1.3中有两种...

    Struts1.3和config配置详解

    在Struts1.3版本中,`struts-config.xml`配置文件扮演着至关重要的角色,它是Struts框架的核心配置文件,定义了控制器的行为和应用的结构。 `struts-config.xml`配置详解: 1. **全局常量配置**:此部分用于定义...

    Struts1.3源代码

    它根据配置文件(struts-config.xml)中的信息来转发请求到相应的Action。 2. **ActionForm**:这个类用于封装用户的表单数据,它是模型层和视图层之间的桥梁,将用户的输入数据从视图传递到业务逻辑层。 3. **...

    struts1.3例子

    Struts1.3配置文件 Struts1.3的主要配置文件是`struts-config.xml`,它定义了Action、Form Bean、DataSources、Forwards等元素。以下是配置文件中的主要部分: - ****: 这个元素包含整个Struts控制器的配置,通常...

    struts1.3+MYSQL5.1小例子

    4. **Controller (DispatchAction)**: 负责调度请求,根据配置文件中的Action Mapping将请求转发给对应的Action。 5. **视图**: 主要是JSP页面,展示数据和用户交互。 **MySQL5.1数据库** MySQL5.1是一个流行的...

    struts 1.3 API.zip

    - **配置文件**:包括struts-config.xml和web.xml,它们定义了Action的映射、拦截器链、结果类型等配置信息。 2. **MVC模式** - **Model**:模型层负责业务逻辑和数据管理,可以是数据库操作、服务接口调用等。 ...

    taglib(struts1.3)源码

    7. 学习路径:首先,了解JSP标准标签库(JSTL)的基础知识,然后深入学习Struts1.3的架构,接着关注Action和Form Bean的生命周期。最后,针对每个具体的标签类,查看其解析方法和执行流程。 8. 实践应用:理论学习...

Global site tag (gtag.js) - Google Analytics