2021SC@SDUSC山东大学软件学院软件工程应用与实践 COCOON 第十四篇

2021SC@SDUSC

目录

Sitemap-components:

acting:

LogAction:

PropagatorAction:

RequestParamAction:

RequestParameterExistsAction:

ResourceExistsAction:

SessionInvalidatorAction:

 SessionIsValidAction:

SessionPropagatorAction:

SessionStateAction:

SessionValidatorAction:

SetCharacterEncodingAction

SetterAction:


Sitemap-components:

acting:

LogAction:

继承了org.apache.cocoon.acting.AbstractAction,实现了TreadSafe接口。

一个简单的操作,用于记录给定日志级别的给定消息。

特征:

level:指示日志级别,默认为“info”。

console:指示消息是否也打印到控制台,默认为false。

message:要记录的消息,默认为“未提供日志消息”。

sitemap定义:

<map:action name="log" src="org.apache.cocoon.acting.LogAction"/>

PropagatorAction:

继承org.apache.cocoon.acting.ServiceableAction,实现了Configurable,ThreadSafe接口。

这是用于使用OutputModule将参数传播到存储中的操作。它只是传播给定的表达式。此外,它将通过返回的映射使所有传播的值可用。

RequestParamAction:

继承org.apache.cocoon.acting.ServiceableAction,实现了ThreadSafe接口。

此操作通过参数替换使某些请求详细信息可用于站点地图。

{context}:是servlet的上下文路径(通常为“/cocoon”)

{requestURI}是不带参数的请求URI

{requestQuery}查询字符串是否与“?param1=test”类似?如果有其他查询字符串,则所有请求参数都可以在站点地图中使用。如果参数“parameters”设置为true。(为每个请求参数(仅当它不存在时)创建一个与参数本身同名的变量)可以通过包括名为“Default”的站点地图参数为请求参数设置默认值。

RequestParameterExistsAction:

继承org.apache.cocoon.acting.AbstractConfigurableAction,实现了ThreadSafe接口。

此操作只是检查给定的请求参数是否存在

检查名为“parameter name”的参数需要任意数量的默认参数。非默认参数需要用空格分隔,并作为名为“parameters”的站点地图参数的值传递。如果所有参数都存在,则该操作返回一个包含所有参数的映射,否则返回null。参数名称只能添加到此列表中,但特定参数不能覆盖任何默认参数。

此操作与@link{RequestParamAction}和FormValidatorAction密切相关。然而,这个操作相当简单,因为它只测试参数的存在性,而不需要描述符。此外,它不会将所有请求参数传播到站点地图,而只将那些标记为必需的参数传播到站点地图。

但是,一个特殊特性是,参数可以包含一个通配符(*)。将检查是否所有带有通配符的参数都具有相同的匹配项。例如,“id_*name_*”强制规定,如果“id_1”存在,“name_1”也必须存在,反之亦然。

ResourceExistsAction:

继承org.apache.cocoon.acting.ServiceableAction,实现ThreadSafe接口。

此操作只是检查src sitemap属性标识的资源是否存在。如果资源存在,则操作返回空映射,否则返回null。

可以使用名为url的参数指定源,而不是src属性(这是旧语法,应该很快删除)。

SessionInvalidatorAction:

继承org.apache.cocoon.acting.AbstractAction,实现了

这是用于使HTTP会话无效的操作。如果一切正常,则操作返回空映射,否则返回null。

 SessionIsValidAction:

继承了org.apache.cocoon.acting.AbstractAction,实现了ThreadSafef接口。

此操作仅检查会话是否存在以及当前会话是否仍然有效。

SessionPropagatorAction:

继承了org.apache.cocoon.acting.AbstractConfigurableAction,实现了ThreadSafe接口。

这是用于将参数传播到会话中的操作。它只是将给定的表达式传播到会话。如果会话不存在,则操作失败。此外,它将通过返回的映射使所有传播的值可用。

SessionStateAction:

继承org.apache.cocoon.acting.AbstractConfigurableAction,实现了ThreadSafe接口。

将会话的当前状态存储在会话属性中。

为了跟踪用户会话的状态,会话属性中存储了一个字符串,以便允许在站点地图中的不同管道之间进行相应的选择。

为了增加灵活性,还可以使用子状态。为此,请为“会话状态”属性声明您自己的名称,并提供子级别的数量加上要修改的级别。当前子状态以下的子状态将从会话中删除,以便在用户返回时重新输入默认子状态。如果您不喜欢这种行为,并且更喜欢独立的子状态,请使用不同的属性名称(而不是子级别)多次执行此操作。

SessionValidatorAction:

继承 org.apache.cocoon.acting.AbstractValidatorAction,实现了ThreadSafe接口。

这是用于验证会话参数(属性)的操作。这些参数通过外部xml文件进行描述

SetCharacterEncodingAction

继承了org.apache.cocoon.acting.ServiceableAction,实现了ThreadSafe和Parameterizable接口。

设置参数的字符编码。

组件在操作后使用此编码作为默认编码。

配置参数:

表单编码(可选)

请求参数的假定编码。

声明和使用时间都支持这些配置选项。

如果未指定编码,则操作不执行任何操作。

SetterAction:

继承org.apache.cocoon.acting.AbstractAction,实现了Parameterizable.

此操作可用于在对象模型、请求或会话中设置信息。

为该操作设置的所有参数都设置在相应的位置,而参数名称是键,参数值将设置为该键的字符串值。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值