本文档描述在 Struts 逻辑标记库中定义的元素的属性。缺省情况下,这些元素中每个元素的名称都有 logic: 前缀。
每个 Struts 元素都有一定数目的属性,可使用元素的“属性”视图来设置这些属性。在使用元素的“属性”视图时,使用此“属性”的表来查找想要了解其更多详细信息的属性。某些属性具有相同名称,但在不同元素中有不同的用法。属性是按字母顺序列示的。
属性 | 所属元素 | 描述 |
---|---|---|
anchor | redirect | 指定要以 #xxx 的形式添加至生成的超链接的可选锚点标记(xxx)。 |
collection | iterate | 指定一个运行时表达式,其求值结果为一个要进行迭代的集合(符合特定需求)。 |
cookie | equal、greaterEqual、greaterThan、lessEqual、lessThan、notEqual、notPresent 和 present | 指定要将其值与 value 属性的值比较的 cookie 的名称。 |
forward | redirect | 指定全局 ActionForward 类的逻辑名,该类包含此 redirect 元素目标的实际内容相对 URI。可通过包括查询参数来动态修改 URI(如标记描述中所述)。必须指定下列其中一项属性:forward、href、linkName 或 page。 |
header | equal、greaterEqual、greaterThan、lessEqual、lessThan、notEqual、notMatch、notPresent 和 present | 指定要对其值进行比较的头的名称。名称匹配是以不区分大小写的方式执行的。 |
href | redirect | 指定此元素将控制转移至的 URL。可以如标记描述中所述的那样通过包括查询参数来动态修改 URL。必须指定下列其中一项属性:forward、href、linkName 或 page。 |
id | iterate | 指定页范围 JSP bean 的名称,如果集合不为空,则每次迭代时该 JSP bean 将包含该消息集合的当前元素。[必填] |
indexId | iterate | 指定页范围 JSP bean 的名称,每次迭代时该 bean 将包含集合的当前索引。 |
length | iterate | 指定要在此页上迭代的条目(来自底层集合)的最大数目。这可以是一个直接表达期望值的整数,也可以是类型为 java.lang.Integer 的定义期望值的 JSP bean(在任何范围内)的名称。缺省情况下,执行的迭代次数不受限制。 |
message | messagesNotPresent 和 messagesPresent | 如果设置为 true,则从 Globals.MESSAGE_KEY 常量字符串检索请求范围 bean 并忽略指定给 name 属性的任何值。缺省情况下,该标记从 Globals.ERROR_KEY 常量字符串检索将对其进行迭代的请求范围 bean。 |
name | equal、greaterEqual、greaterThan、lessEqual、lessThan、notEqual、notMatch、notPresent 和 present | 指定一个 JSP bean 作为要比较的变量(如果省略 property),或指定此 bean 的指定属性的值(如果指定了 property)。 |
name | forward | 指定标识要使用的目标和转发方法的全局 ActionForward 条目的逻辑名。 注: 不支持从此标记转发至平铺定义。应从操作转发至它们。
[必填] |
name | iterate | 指定包含要迭代的集合的 JSP bean 的名称(如果省略 property),或指定其属性 getter 返回要迭代的集合的 JSP bean 的名称(如果指定了 property)。 |
name | match 和 notMatch | 指定要匹配的变量是此属性指定的 JSP bean(如果省略 property),或指定此 bean 的指定属性的值(如果指定了 property)。 |
name | messagesNotPresent 和 messagesPresent | 指定参数键以从请求范围检索消息。 |
name | notPresent 和 present | 使用指定的名称在所有范围内检查 JSP bean 的存在。如果还指定了 property,则 name 对指定属性检查非空的属性值。 |
name | redirect | 指定这样一个 JSP bean 的名称:它包含表示查询参数的 Map 类(如果省略 property),或者它的属性 getter 被调用来返回一个 Map(如果指定了 property)。 |
offset | iterate | 指定起始点的零相对索引,将从此起始点对底层集合中的条目进行迭代。这可以是一个直接表达期望值的整数,也可以是类型为 java.lang.Integer 的定义期望值的 JSP bean(在任何范围内)的名称。缺省值为零,表示将从开头对集合进行迭代。 |
page | redirect | 指定上下文相对路径(以 / 字符开头),此超链接被激活时将把控制转移至此路径。可以如标记描述中所述的那样通过包括查询参数来动态修改超链接。必须指定下列其中一项属性:forward、href、linkName 或 page。 |
parameter | equal、greaterEqual、greaterThan、lessEqual、lessThan、notEqual、notMatch、notPresent 和 present | 指定要将其值与 value 属性的值比较的 URL 请求参数的名称。 |
paramId | redirect | 指定将被动态添加至所生成超链接的请求参数的名称。相应的值是由 paramName 属性和(可选)paramProperty 属性定义的,并且可选择由 paramScope 属性指定范围。 |
paramName | redirect | 指定这样一个 JSP bean 的名称:它是包含由 paramId 命名的请求参数的值的字符串(如果省略 paramProperty),或它的属性 getter 被调用来返回一个字符串(如果指定 paramProperty)。如果指定了 paramScope 属性,则该 JSP bean 就限于由该属性指定的 bean 范围。 |
paramProperty | redirect | 指定由 paramName 属性指定的 bean 属性的名称,其返回值必须是包含请求参数(由 paramId 属性命名)的值的字符串,而该请求参数将被动态添加至此超链接。 |
paramScope | redirect | 指定搜索由 paramName 属性指定的 bean 的范围。缺省情况下,将搜索所有范围。 |
property | empty、equal、iterate、messagesNotPresent、messagesPresent、notEqual、notPresent、present 和 redirect | 指定要对其值进行比较的(由 name 属性指定的 bean 的)属性的名称。属性引用可以是简单、嵌套或索引引用。 |
role | notPresent 和 present | 检查当前认证的用户(如果有的话)是否已与指定的任一安全角色相关联。要指定多个角色,可用逗号将各角色名分隔开。 |
scope | equal、greaterEqual、greaterThan、lessEqual、lessThan、notEqual、notMatch、notPresent 和 present | 指定搜索由 name 属性命名的 bean 的 bean 范围。缺省值为使用任意范围。 |
transaction | redirect | 如果设置为 true,则将当前事务控制标记包括在此元素的已生成 URL 中。 |
type | iterate | 指定要通过从 id 属性命名的 JSP Bean 显示的元素的标准 Java™ 类名。缺省情况下,不执行类型转换。 注: 集合的实际元素与此类必须是赋值兼容的,否则,将会发生请求时间 ClassCastException 错误。
|
user | notPresent 和 present | 检查当前认证的用户是否具有指定的名称。 |
value | equal、greaterEqual、greaterThan、lessEqual、lessThan 和 notEqual | 指定此标记的其它属性指定的变量将与之比较的常量值。 |