标记属性如下:
属性
描述
Action
与表单相关的操作。在配置中,这个操作也用来标识与表单相关的ActionForm bean
Enctype
表单HTTP方法的编码类型
Focus
表单中需要初始化焦点的字段
Method
表单使用的HTTP方法
Name
与表单相关的ActionForm bean的名称。如果没有设置这个属性,be5、an的名称将会从配置信息中获得
Onreset
表单复位时的JavaScript事件句柄
Onsubmit
表单提交时的JavaScript事件句柄
Scope
搜索ActionForm bean的范围。如果没有设置,将从配置文件中获取
Style
使用的格式
styleClass
这个元素的格式表类
Type
ActionForm bean的完整名称。如果没有设置,将从配置文件获得
例如:
与表单相关的操作路径是validate
6、Employee,而表单数据是通过POST传递的。对于这个表单来说,ActionForm bean的其他信息,如bean名称类型,作用域,都是从表单指定操作的ActionMapping中检索得到的:
7、me=”empForm”
scope=”request”
input=”/employeeInput.jsp”>
如果配置文件中包含上述信息,并且请求URI的*.do被映射到ActionServlet,与表单相关的ActionForm bean的名称,类型和作用域分别是empForm,com.example.EmployeeForm和request.这些属性也可以使用标记属性进行显示的
8、定义。
以下标记必须嵌套在标记里
按钮和取消标记
标记显示一个按钮控件;标记显示一个取消按钮。属性如下:
属性
描述
Property
定义在表单被提交时返回到服务器的请求参数的名称
Value
按钮上的标记
复位和提交标记
和标记分别能够显示HTML复位按钮和提交按钮。
文本和文本区标记
和标记分别HTML文本框和文本区,属性如下:
属性
描述
Property
定义当表单被提交时送回
9、到服务器的请求参数的名称,或用来确定文本元素当前值的bean的属性名称
Name
属性被查询的bean的名称,它决定了文本框和文本区的值。如果没有设置,将使用与这个内嵌表单相关的ActionForm的名称
标记还有以下属性:
属性
描述
Maxlength
能够输入的最大字符数
Size
文本框的大小(字符数)
标记特有的属性如下:
属性
描述
Rows
文本区的行数
Cols
文本区的列数
检查框和复选框标记
标记能够显示检查框控件。标记能够显示
10、HTML复选框控件,请求对象在传递检查框名称时使用的getParameterValues()调用将返回一个字符串数组。属性如下:
属性
描述
Name
Bean的名称,其属性会被用来确定检查是否以选中的状态显示。如果没有设置,将使用与这个内嵌表单相关的ActionFrom bean的名称。
Property
检查框的名称,也是决定检查框是否以选中的状态显示的bean属性名称。在复选框的情况下,这个属性必须是一个数组。
Value
当检查框被选中时返回到服务器的请求参数的值
例如:
11、一个名为married的检查框,在表单提交时会返回一个”Y”.
文件标记
标记可以显示HTML文件控件。属性如下:
属性
描述
Name
Bean的名称,它的属性将确定文件控件中显示的内容。如果没设置,将使用与内嵌表单相关的ActionForm bean的名称
property
这个属性定义了当表单被提交时送回到服务器的请求参数的名称,以及用来确定文件控件中显示内容的bean属性名称
Accept
服务器能够处理的内容类型集。它也将对客户浏览器对话框中的可选文件类型进行过滤
Value
按钮上的标记,这个按钮能够在本地文件系统中浏览文件
单选钮标
12、记
标记用来显示HTML单选钮控件,属性如下:
属性
描述
Name
Bean的名称,其属性会被用来确定单选钮是否以选中的状态显示。如果没有设置,将使用与这个内嵌表单相关的ActionFrom bean的名称。
property
当表单被提交时送回到服务器的请求参数的名称,以及用来确定单选钮是否以被选中状态进行显示的bean属性的名称
Value
当单选钮被选中时返回到服务器的值
隐藏标记
标记能够显示HTML隐藏输入元素,属性如下:
属性
描述
Name
Bean的名称,其属性会被用来确定隐藏元素的当前值。如果没
13、有设置,将使用与这个内嵌表单相关的ActionFrom bean的名称。
property
定义了当表单被提交时送回到服务器的请求参数的名称,以及用来确定隐藏元素当前值的bean属性的名称
Value
用来初始化隐藏输入元素的值
密码标记
标记能够显示HTML密码控件,属性如下:
属性
描述
maxlength
能够输入的最大字符数
Name
Bean的名称,它的属性将用来确定密码元素的当前值。如果没有设置,将使用与这个内嵌表单相关的ActionFrom bean的名称。
property
定义了当表单被提交时送回到服务器的请求参数的名
14、称,以及用来确定密码元素当前值的bean属性的名称
redisplay
在显示这个字段时,如果相应的bean属性已经被设置了数据,这个属性决定了是否显示密码的内容
Size
字段的大小
选择标记
标记能够显示HTML选择控件,属性如下:
属性
描述
multiple
表明这个选择控件是否允许进行多选
Name
Bean的名称,它的属性确定了哪个。如果没有设置,将使用与这个内嵌表单相关的ActionFrom bean的名称。
property
定义了当表单被提交时送回到服务器的请求参数的名称,以及用来确定哪个选项需要被选中的bean属性的名称
15、
Size
能够同时显示的选项数目
Value
用来表明需要被选中的选项
选项标记(这个元素需要嵌套在标记里)
标记用来显示HTML选项元素集合,属性如下:
属性
描述
collection
Bean集合的名称,这个集合存储在某个作用域的属性中。选项的数目与集合中元素的数目相同。Property属性能够定义选项值所使用的bean属性,而labelProperty属性定义选项标记所使用的bean的属性
labelName
用来指定存储于某个作用域的bean,这个bean是一个字符串的集合,能够定义16、>元素的标记(如果标志与值不相同)
labelProperty
与collection属性共同使用时,用来定义了存储于某个作用域的bean,这个bean将返回一个字符串集合,能够用来写入元素的value属性
Name
如果这是唯一被指定的属性,它就定义了存储于某个作用域的bean,这个bean将返回一个字符串集合,能够用来写入元素的value属性
property
这个属性在与collection属性共同使用时,定义了每个要显示选项值的独立bean的name属性。如果不是与collection属性共同使用,这个属性定义了由name
17、属性指定的bean的属性名称(如果有name属性),或是定义了一个ActionForm bean,这个bean将返回一个集合来写入选项的值
我们看一下这个标记的一些例子:
标记假设在某个作用域中有一个名为optionCollection的集合,它包含了一些具有optionValue属性的独立的bean,每个属性将作为一个选项的值。每个选项的标志由bean的optionLabel属性属性进行定义。
18、
标记中optionValues代表一个存储在某个作用域中的bean,它是一个字符串集合,能够用来写入选项的值,而optionLabels代表一个存储在某个作用域中的bean,它也是一个字符串集合,能够用来写入选项的标志。
显示错误信息的标记
标记能够与ActionErrors结合在一起来显示错误信息。这个标记首先要从当前区域的资源文件中读取消息关键字errors.header,然后显示消息的文本。接下去它会在ActionErrors对象(通常
19、作为请求参数而存储在Action.ERROR_KEY关键字下)中循环,读取单个ActionError对象的消息关键字,从当前区域的资源文件中读取并格式化相应的消息,并且显示它们。然后它读取与errors.footer关键字相对应的消息并且显示出来。
通过定义property属性能够过滤要显示的消息,这个属性的值应该与ActionErrors对象中存储ActionError对象的关键字对应。属性如下:
属性
描述
Bundle
表示应用程序作用域属性的名称,它包含着消息资源,其默认值Acion.MESSAGE_KEY
Locale
表示会话作用域属性的名称,它存储着用户当前登录的区
20、域信息。其默认值是Action.ERROR_KEY
Name
表示请求属性的名称,它存储着ActionErrors对象。其默认值是Action.ERROR_KEY
property
这个属性指定了ActionErrors对象中存储每个独立ActionError对象的关键字,它可以过滤消息
例子:
显示集合中所有的错误。
显示存储在missing.name关键字的错误。
其他HTML标记
struts HTML标记还定义了下列标记来显示其他HTML元素:
l 21、ml:html> : 显示HTML元素
l : 显示图象标记
l : 显示HTML链接或锚点
l : 创建没有锚点标记的URI
这些标记的详细内容请参照struts文档。
Bean标记
Bean定义标记:
可定义新bean,可复制现有bean,还可从现有bean复制属性。
标记用来:
l 定义新字符串常数
l 将现有的bean复制到新定义的bean对象
l 复制现有bean的属性来创建新的bean
标记属性:
属性
22、描述
Id
新定义的bean脚本变量名称,必须设置
Type
定义引入脚本变量的类
Value
为id属性定义的脚本变量分配一个新的对象
Name
目标bean的名称。若value属性没有设置,这个属性就必须设置
property
Name属性定义的bean的属性名称,用来定义新的bean
Scope
源bean的作用域。若没有设置,搜索范围是从页作用域到应用程序作用域
toScope
目标bean的作用域。若没有设置,默认值是页作用域
例如:定义一个bean:
源
23、bean在页作用域中被拷贝大哦请求作用域中的另一个bean:
定义脚本变量的标记
从多种资源中定义和生成作用域为当前页得变量,这些资源包括cookie,请求参数,HTTP标头等等。属性如下:
属性
描述
Id
脚本变量和要定义的页作用域属性的名称
Name
cookie/标头/参数的名称
multiple
如果这个属性设置了任意一个数值,所有匹配的cookie都会被积累并存储到一个Cookie[](一个数组)类型
24、的bean里。若无设置,指定cookie的第一个值将作为Cookie类型的值
Value
如果没有匹配的cookie或数值,就返回这个属性指定的默认值
例如:
脚本变量名称是myCookie,用来创建这个属性的cookie的名称是userName。