JSP 2.0 可复用对话组件 (RDC) —— 一个用于创建 JSP 标签库的框架,旨在帮助快速开发语音和多模态应用程序。
服务器端生成 HTML 已被证明是为使用 Struts 等服务器端应用框架实现的视觉 Web 应用程序生成用户界面的有效方式。随着时间的推移,各种 JSP 标签库的出现,将 HTML 标记的细节抽象化,从而减少了生成 HTML 所需的工作量。RDC 项目的目标是,为语音应用程序实现 JSP 标签库在视觉 Web 应用程序领域已经取得的成就。
随着语音技术的成熟以及几年前 W3C VoiceXML 2.0 REC 中定义的稳定且健壮的语音编程模型的出现,语音应用领域正在快速增长。要在 Tomcat 等环境中将服务器端语音应用程序的开发主流化,下一步必要的步骤是提供适当的标签库,帮助 JSP 开发人员摆脱语音交互的复杂性。目标是帮助以 JSP 标签库的形式打包专业语音设计技能,使 JSP 开发人员能够轻松地为 Web 应用程序启用语音功能。
此自定义标签库需要支持 JavaServer Pages 规范 2.0 版或更高版本的 Servlet 容器。依赖项包括:
请按照以下步骤配置您的 Web 应用程序以使用此标签库:
要在您的 JSP 页面中使用此库中的标签,请在每个页面的顶部添加以下指令:
<%@ taglib uri="https://tomcat.net.cn/taglibs/rdc-1.1" prefix="rdc" %>
其中 "rdc" 是您希望用于此库中标签的标签名称前缀。您可以将此值更改为任何您喜欢的前缀。
alpha | 收集字母字符串 |
alphanum | 收集字母数字字符串 |
color | 收集颜色 |
country | 收集国家名称 |
creditcardAmount | 收集信用卡账单金额 |
creditcardExpiry | 收集信用卡有效期 |
creditcardNumber | 收集信用卡号 |
creditcardType | 收集信用卡类型 |
currency | 收集货币值 |
date | 收集日期 |
digits | 收集数字字符串 |
duration | 收集持续时间 |
isbn | 收集国际标准书号 |
mortgageType | 收集抵押贷款类型 |
number | 收集数值 |
percent | 收集百分比 |
select1 | 从选项列表中收集一个选择 |
ssn | 收集社会安全号码 |
time | 收集时间 |
usMajorCity | 收集美国主要城市名称 |
usState | 收集美国州名 |
zipCode | 收集邮政编码 |
creditcardInfo | 收集信用卡信息:包括卡类型、卡号、有效期和安全码 |
dateRange | 收集日期范围,表示时间段的开始日期和结束日期。 |
mortgage | 收集抵押贷款信息:包括抵押贷款类型和首付百分比 |
group | 作为容器,托管多个 RDC 并使用可插拔的对话管理策略管理它们之间的对话 |
peek | 查看堆栈顶部元素。 |
pop | 从堆栈中弹出顶部元素。 |
push | 将元素推入堆栈。 |
task | 为 RDC 提供所需的支架 |
comment | RDC 注释 |
configure | 配置此组件的提示、属性等。如果用户未提供配置,则使用预先指定的默认配置。 |
expand | 将包含使用自定义语法 "#{...}" 的表达式文本评估为 JSP 2.0 EL 表达式 |
extract-params | 从浏览器发送的 HTTP 请求中提取必要的参数。 |
fsm-confirm | 生成 VoiceXML 以确认使用默认 RDC FSM 的组件输入的辅助标签。 |
fsm-input | 生成 VoiceXML 以收集使用默认 RDC FSM 的组件输入的辅助标签。 |
fsm-run | 定义默认 RDC FSM 的辅助标签。 |
get-configuration | 从此 RDC 的配置文件中获取与给定 XPath 对应的元素 |
get-default-config | 获取此组件的默认配置。 |
get-resource | 从资源包中获取由键指定的资源。 |
hello | 一个 RDC hello world 标签 |
include-fsm-fragment | 包含此 RDC 模板实例的标签片段。 |
pause | 应用程序暂停的可能处理程序 |
set-config-composite | 在复合组件中设置页面上下文和配置。 |
set-grammar | 使用资源包中给定属性作为语法 URI 来设置语法。 |
setup-results | 设置此组件的属性,这些属性会影响浏览器提交结果的方式和位置。 |
struts-errors | 播放前一个 Struts 动作的所有错误消息。 |
struts-submit | 将 namelist 中指定的 RDC 值提交到 Struts 层。 |
subdialog-return | 如果作为子对话调用,则生成适当的 VoiceXML 返回语句。RDC 的值必须根据标准公共契约进行序列化,以便在宿主对话(或调用者)中进行有意义的反序列化。 |
template | 用于快速开发原子 RDC 的模板 |
alpha - 字母 | |||||
|
|||||
属性 | 名称 | 值 | 必需 | 运行时表达式求值 | 摘要 |
id | 某个名称 | 是 | 否 | 组件 ID | |
submit | self-URI | 否 | 是 | 结果提交的位置 | |
config | xxx-cfg.xml | 否 | 是 | 组件的配置文件 | |
numNBest | [0-9]* | 否 | 是 | 请求的 N-best 值的最大数量 | |
minConfidence | [0-9][0-9].[0-9]*F | 否 | 是 | 识别输出的最小置信度值 | |
echo | true/false | 否 | 是 | 播放选项 | |
locale | [language](-[country])? | 否 | 是 | RDC 区域设置 | |
maxNoInput | [0-9]* | 否 | 是 | 无输入时优雅退出 | |
maxNoMatch | [0-9]* | 否 | 是 | 无匹配时优雅退出 | |
initial | [a-zA-Z ']* | 否 | 是 | alpha 的默认值 | |
confirm | true/false | 否 | 是 | 确认选项 | |
minLength | [0-9]* | 否 | 是 | 可接受的最小长度 | |
maxLength | [0-9]* | 否 | 是 | 可接受的最大长度 | |
pattern | 正则表达式 | 否 | 是 | 可接受值的模式 | |
subdialog | true/false | 否 | 是 | 子对话选项 | |
用法 | <rdc:alpha id="myAlpha" echo="true" /> | ||||
示例 | 请参见 rdc-examples 应用程序中的 alpha-test.jsp。 |
||||
alphanum - 字母数字 | |||||
|
|||||
属性 | 名称 | 值 | 必需 | 运行时表达式求值 | 摘要 |
id | 某个名称 | 是 | 否 | 组件 ID | |
submit | self-URI | 否 | 是 | 结果提交的位置 | |
config | xxx-cfg.xml | 否 | 是 | 组件的配置文件 | |
numNBest | [0-9]* | 否 | 是 | 请求的 N-best 值的最大数量 | |
minConfidence | [0-9][0-9].[0-9]*F | 否 | 是 | 识别输出的最小置信度值 | |
echo | true/false | 否 | 是 | 播放选项 | |
locale | [language](-[country])? | 否 | 是 | RDC 区域设置 | |
maxNoInput | [0-9]* | 否 | 是 | 无输入时优雅退出 | |
maxNoMatch | [0-9]* | 否 | 是 | 无匹配时优雅退出 | |
initial | [a-z0-9]* | 否 | 是 | alphanum 的默认值 | |
confirm | true/false | 否 | 是 | 确认选项 | |
minLength | [0-9]* | 否 | 是 | 可接受的最小长度 | |
maxLength | [0-9]* | 否 | 是 | 可接受的最大长度 | |
pattern | 正则表达式 | 否 | 是 | 可接受值的模式 | |
subdialog | true/false | 否 | 是 | 子对话选项 | |
用法 | <rdc:alphanum id="myAlphanum" minLength="5" maxLength="5" pattern="[0-9]*" confirm="true" echo="true"/> | ||||
示例 | 请参见 rdc-examples 应用程序中的 alphanum-test.jsp。 |
||||
color - 颜色 | |||||
|
|||||
属性 | 名称 | 值 | 必需 | 运行时表达式求值 | 摘要 |
id | 某个名称 | 是 | 否 | 组件 ID | |
submit | self-URI | 否 | 是 | 结果提交的位置 | |
config | xxx-cfg.xml | 否 | 是 | 组件的配置文件 | |
initial | red | 否 | 是 | 默认颜色 | |
numNBest | [0-9]* | 否 | 是 | 请求的 N-best 值的最大数量 | |
minConfidence | [0-9][0-9].[0-9]*F | 否 | 是 | 识别输出的最小置信度值 | |
maxNoInput | [0-9]* | 否 | 是 | 无输入时优雅退出 | |
maxNoMatch | [0-9]* | 否 | 是 | 无匹配时优雅退出 | |
locale | [language](-[country])? | 否 | 是 | RDC 区域设置 | |
echo | true/false | 否 | 是 | 播放选项 | |
confirm | true/false | 否 | 是 | 确认选项 | |
subdialog | true/false | 否 | 是 | 子对话选项 | |
用法 | <rdc:color id="myColor" confirm="true" echo="true" /> | ||||
示例 | 请参见 rdc-examples 应用程序中的 color-test.jsp。 |
||||
country - 国家 | |||||
|
|||||
属性 | 名称 | 值 | 必需 | 运行时表达式求值 | 摘要 |
id | 某个名称 | 是 | 否 | 组件 ID | |
initial | India | 否 | 是 | country 的默认值 | |
confirm | true/false | 否 | 是 | 确认选项 | |
echo | true/false | 否 | 是 | 播放选项 | |
locale | [language](-[country])? | 否 | 是 | RDC 区域设置 | |
maxNoInput | [0-9]* | 否 | 是 | 无输入时优雅退出 | |
maxNoMatch | [0-9]* | 否 | 是 | 无匹配时优雅退出 | |
config | xxx-cfg.xml | 否 | 是 | 组件的配置文件 | |
numNBest | [0-9]* | 否 | 是 | 请求的 N-best 值的最大数量 | |
minConfidence | [0-9][0-9].[0-9]*F | 否 | 是 | 识别输出的最小置信度值 | |
submit | self-URI | 否 | 是 | 结果提交的位置 | |
subdialog | true/false | 否 | 是 | 子对话选项 | |
用法 | <rdc:country id="myCountry" /> | ||||
示例 | 请参见 rdc-examples 应用程序中的 country-test.jsp。 |
||||
creditcardAmount - 信用卡金额 | |||||
|
|||||
属性 | 名称 | 值 | 必需 | 运行时表达式求值 | 摘要 |
id | 某个名称 | 是 | 否 | 组件 ID | |
config | xxx-cfg.xml | 否 | 是 | 组件的配置文件 | |
numNBest | [0-9]* | 否 | 是 | 请求的 N-best 值的最大数量 | |
locale | [language](-[country])? | 否 | 是 | RDC 区域设置 | |
minConfidence | [0-9][0-9].[0-9]*F | 否 | 是 | 识别输出的最小置信度值 | |
balance | [0-9]*.[0-9]{2} | 否 | 是 | 此付款的余额 | |
minAmount | [0-9]*.[0-9]{2} | 否 | 是 | 最小应付金额 | |
maxAmount | [0-9]*.[0-9]{2} | 否 | 是 | 可支付的最大金额 | |
maxDenials | [0-9]* | 否 | 是 | 将导致此 RDC 退出的最大拒绝确认数 | |
currencyCode | [A-Za-z][A-Za-z][A-Za-z] | 否 | 是 | ISO 4217 货币代码 | |
echo | true/false | 否 | 是 | 播放选项 | |
maxNoInput | [0-9]* | 否 | 是 | 无输入时优雅退出 | |
maxNoMatch | [0-9]* | 否 | 是 | 无匹配时优雅退出 | |
initial | 信用卡金额 | 否 | 是 | 信用卡金额的默认值 | |
confirm | true/false | 否 | 是 | 确认选项 | |
submit | self-URI | 否 | 是 | 提交 URL | |
subdialog | true/false | 否 | 是 | 子对话选项 | |
用法 | <rdc:creditcardAmount id="myCCAmount" minAmount="USD20.00" balance="USD123.45" /> | ||||
示例 | 请参见 rdc-examples 应用程序中的 creditcardAmount-test.jsp。 |
||||
creditcardExpiry - 信用卡有效期 | |||||
|
|||||
属性 | 名称 | 值 | 必需 | 运行时表达式求值 | 摘要 |
id | 某个名称 | 是 | 否 | 组件 ID | |
config | xxx-cfg.xml | 否 | 是 | 组件的配置文件 | |
numNBest | [0-9]* | 否 | 是 | 请求的 N-best 值的最大数量 | |
locale | [language](-[country])? | 否 | 是 | RDC 区域设置 | |
minConfidence | [0-9][0-9].[0-9]*F | 否 | 是 | 识别输出的最小置信度值 | |
echo | true/false | 否 | 是 | 播放选项 | |
maxNoInput | [0-9]* | 否 | 是 | 无输入时优雅退出 | |
maxNoMatch | [0-9]* | 否 | 是 | 无匹配时优雅退出 | |
initial | 信用卡有效期 | 否 | 是 | 信用卡有效期的默认值 | |
maxDenials | [0-9]* | 否 | 是 | 将导致此 RDC 退出的最大拒绝确认数 | |
confirm | true/false | 否 | 是 | 确认选项 | |
submit | self-URI | 否 | 是 | 提交 URL | |
subdialog | true/false | 否 | 是 | 子对话选项 | |
用法 | <rdc:creditcardExpiry id="myCCExpiry" /> | ||||
示例 | 请参见 rdc-examples 应用程序中的 creditcardExpiry-test.jsp。 |
||||
creditcardNumber - 信用卡号 | |||||
|
|||||
属性 | 名称 | 值 | 必需 | 运行时表达式求值 | 摘要 |
id | 某个名称 | 是 | 否 | 组件 ID | |
config | xxx-cfg.xml | 否 | 是 | 组件的配置文件 | |
numNBest | [0-9]* | 否 | 是 | 请求的 N-best 值的最大数量 | |
locale | [language](-[country])? | 否 | 是 | RDC 区域设置 | |
minConfidence | [0-9][0-9].[0-9]*F | 否 | 是 | 识别输出的最小置信度值 | |
echo | true/false | 否 | 是 | 播放选项 | |
maxNoInput | [0-9]* | 否 | 是 | 无输入时优雅退出 | |
maxNoMatch | [0-9]* | 否 | 是 | 无匹配时优雅退出 | |
initial | 信用卡号 | 否 | 是 | 信用卡号的默认值 | |
maxDenials | [0-9]* | 否 | 是 | 将导致此 RDC 退出的最大拒绝确认数 | |
confirm | true/false | 否 | 是 | 确认选项 | |
submit | self-URI | 否 | 是 | 提交 URL | |
subdialog | true/false | 否 | 是 | 子对话选项 | |
用法 | <rdc:creditcardNumber id="myCCNumber" confirm="true" /> | ||||
示例 | 请参见 rdc-examples 应用程序中的 creditcardNumber-test.jsp。 |
||||
creditcardType - 信用卡类型 | |||||
|
|||||
属性 | 名称 | 值 | 必需 | 运行时表达式求值 | 摘要 |
id | 某个名称 | 是 | 否 | 组件 ID | |
config | xxx-cfg.xml | 否 | 是 | 组件的配置文件 | |
numNBest | [0-9]* | 否 | 是 | 请求的 N-best 值的最大数量 | |
locale | [language](-[country])? | 否 | 是 | RDC 区域设置 | |
minConfidence | [0-9][0-9].[0-9]*F | 否 | 是 | 识别输出的最小置信度值 | |
echo | true/false | 否 | 是 | 播放选项 | |
maxNoInput | [0-9]* | 否 | 是 | 无输入时优雅退出 | |
maxNoMatch | [0-9]* | 否 | 是 | 无匹配时优雅退出 | |
initial | 信用卡类型 | 否 | 是 | 信用卡类型的默认值 | |
confirm | true/false | 否 | 是 | 确认选项 | |
submit | self-URI | 否 | 是 | 提交 URL | |
subdialog | true/false | 否 | 是 | 子对话选项 | |
用法 | <rdc:creditcardType id="myCCType" initial="Visa" echo="true" /> | ||||
示例 | 请参见 rdc-examples 应用程序中的 creditcardType-test.jsp。 |
||||
currency - 货币 | |||||
|
|||||
属性 | 名称 | 值 | 必需 | 运行时表达式求值 | 摘要 |
id | 某个名称 | 是 | 否 | 组件 ID | |
minValue | [0-9]*.?[0-9]{0,2} | 否 | 是 | 可接受的最小金额 | |
maxValue | [0-9]*.?[0-9]{0,2} | 否 | 是 | 可接受的最大金额 | |
currencyCode | [A-Za-z][A-Za-z][A-Za-z] | 否 | 是 | ISO 4217 货币代码 | |
initial | xxxxxx | 否 | 是 | 默认金额 | |
confirm | true/false | 否 | 是 | 确认选项 | |
echo | true/false | 否 | 是 | 播放选项 | |
locale | [language](-[country])? | 否 | 是 | RDC 区域设置 | |
maxNoInput | [0-9]* | 否 | 是 | 无输入时优雅退出 | |
maxNoMatch | [0-9]* | 否 | 是 | 无匹配时优雅退出 | |
config | xxx-cfg.xml | 否 | 是 | 组件的配置文件 | |
numNBest | [0-9]* | 否 | 是 | 请求的 N-best 值的最大数量 | |
minConfidence | [0-9][0-9].[0-9]*F | 否 | 是 | 识别输出的最小置信度值 | |
submit | self-URI | 否 | 是 | 提交 URL | |
subdialog | true/false | 否 | 是 | 子对话选项 | |
用法 | <rdc:currency id="myCurrency" minValue="100" echo="true" /> | ||||
示例 | 请参见 rdc-examples 应用程序中的 currency-test.jsp。 |
||||
date - 日期 | |||||
|
|||||
属性 | 名称 | 值 | 必需 | 运行时表达式求值 | 摘要 |
id | 某个名称 | 是 | 否 | 组件 ID | |
minDate | xxxxxxxx | 否 | 是 | 可接受的最小日期 | |
maxDate | xxxxxxxx | 否 | 是 | 可接受的最大日期 | |
initial | xxxxxx | 否 | 是 | 日期的默认值 | |
confirm | true/false | 否 | 是 | 确认选项 | |
echo | true/false | 否 | 是 | 播放选项 | |
locale | [language](-[country])? | 否 | 是 | RDC 区域设置 | |
maxNoInput | [0-9]* | 否 | 是 | 无输入时优雅退出 | |
maxNoMatch | [0-9]* | 否 | 是 | 无匹配时优雅退出 | |
config | xxx-cfg.xml | 否 | 是 | 组件的配置文件 | |
numNBest | [0-9]* | 否 | 是 | 请求的 N-best 值的最大数量 | |
minConfidence | [0-9][0-9].[0-9]*F | 否 | 是 | 识别输出的最小置信度值 | |
submit | self-URI | 否 | 是 | 结果提交的位置 | |
format | 日期格式 | 否 | 是 | 日期字符串返回的格式 | |
subdialog | true/false | 否 | 是 | 子对话选项 | |
用法 | <rdc:date id="myDate" minDate="01012004" maxDate="12312005" echo="true" /> | ||||
示例 | 请参见 rdc-examples 应用程序中的 date-test.jsp。 |
||||
digits - 数字 | |||||
|
|||||
属性 | 名称 | 值 | 必需 | 运行时表达式求值 | 摘要 |
id | 某个名称 | 是 | 否 | 组件 ID | |
minLength | [0-9]* | 否 | 是 | 可接受的最小数字长度 | |
maxLength | [0-9]* | 否 | 是 | 可接受的最大数字长度 | |
initial | [0-9]* | 否 | 是 | 数字的默认值 | |
confirm | true/false | 否 | 是 | 确认选项 | |
echo | true/false | 否 | 是 | 播放选项 | |
locale | [language](-[country])? | 否 | 是 | RDC 区域设置 | |
maxNoInput | [0-9]* | 否 | 是 | 无输入时优雅退出 | |
maxNoMatch | [0-9]* | 否 | 是 | 无匹配时优雅退出 | |
config | xxx-cfg.xml | 否 | 是 | 组件的配置文件 | |
numNBest | [0-9]* | 否 | 是 | 请求的 N-best 值的最大数量 | |
minConfidence | [0-9][0-9].[0-9]*F | 否 | 是 | 识别输出的最小置信度值 | |
submit | self-URI | 否 | 是 | 结果提交的位置 | |
subdialog | true/false | 否 | 是 | 子对话选项 | |
用法 | <rdc:digits id="myDigits" minLength="3" maxLength="7" /> | ||||
示例 | 请参见 rdc-examples 应用程序中的 digits-test.jsp。 |
||||
duration - 持续时间 | |||||
|
|||||
属性 | 名称 | 值 | 必需 | 运行时表达式求值 | 摘要 |
id | 某个名称 | 是 | 否 | 组件 ID | |
minDuration | P([0-9]{2}Y)?([0-9]{2}M)?([0-9]{2}D)? | 否 | 是 | 可接受的最小持续时间 | |
maxDuration | P([0-9]{2}Y)?([0-9]{2}M)?([0-9]{2}D)? | 否 | 是 | 可接受的最大持续时间 | |
initial | P([0-9]{2}Y)?([0-9]{2}M)?([0-9]{2}D)? | 否 | 是 | 持续时间的默认值 | |
confirm | true/false | 否 | 是 | 确认选项 | |
locale | [language](-[country])? | 否 | 是 | RDC 区域设置 | |
echo | true/false | 否 | 是 | 播放选项 | |
maxNoInput | [0-9]* | 否 | 是 | 无输入时优雅退出 | |
maxNoMatch | [0-9]* | 否 | 是 | 无匹配时优雅退出 | |
config | xxx-cfg.xml | 否 | 是 | 组件的配置文件 | |
numNBest | [0-9]* | 否 | 是 | 请求的 N-best 值的最大数量 | |
minConfidence | [0-9][0-9].[0-9]*F | 否 | 是 | 识别输出的最小置信度值 | |
submit | self-URI | 否 | 是 | 结果提交的位置 | |
subdialog | true/false | 否 | 是 | 子对话选项 | |
用法 | <rdc:duration id="myDuration" echo="true" /> | ||||
示例 | 请参见 rdc-examples 应用程序中的 duration-test.jsp。 |
||||
isbn - isbn | |||||
|
|||||
属性 | 名称 | 值 | 必需 | 运行时表达式求值 | 摘要 |
id | 某个名称 | 是 | 否 | 组件 ID | |
pattern | 一个正则表达式 | 否 | 是 | 表示有效国际标准书号集合的正则表达式 | |
config | xxx-cfg.xml | 否 | 是 | 组件的配置文件 | |
echo | true/false | 否 | 是 | 播放选项 | |
confirm | true/false | 否 | 是 | 确认选项 | |
locale | [language](-[country])? | 否 | 是 | RDC 区域设置 | |
maxNoInput | [0-9]* | 否 | 是 | 无输入时优雅退出 | |
maxNoMatch | [0-9]* | 否 | 是 | 无匹配时优雅退出 | |
initial | xxxxxxxxxxx | 否 | 是 | 默认 ISBN 值 | |
numNBest | [0-9]* | 否 | 是 | 请求的 N-best 值的最大数量 | |
minConfidence | [0-9][0-9].[0-9]*F | 否 | 是 | 识别输出的最小置信度值 | |
submit | submit-uri | 否 | 是 | JSP 页面的 URI | |
subdialog | true/false | 否 | 是 | 子对话选项 | |
用法 | <rdc:isbn id="myISBN" confirm="true" echo="true" /> | ||||
示例 | 请参见 rdc-examples 应用程序中的 isbn-test.jsp。 |
||||
mortgageType - 抵押贷款类型 | |||||
|
|||||
属性 | 名称 | 值 | 必需 | 运行时表达式求值 | 摘要 |
id | 某个名称 | 是 | 否 | 组件 ID | |
minTerm | [0-9]{1,2}Y(fixed|adjustable) | 否 | 是 | 可接受的最小抵押贷款类型 | |
maxTerm | [0-9]{1,2}Y(fixed|adjustable) | 否 | 是 | 可接受的最大抵押贷款类型 | |
locale | [language](-[country])? | 否 | 是 | RDC 区域设置 | |
initial | [0-9]{1,2}Y(fixed|adjustable) | 否 | 是 | 抵押贷款类型的默认值 | |
confirm | true/false | 否 | 是 | 确认选项 | |
maxNoInput | [0-9]* | 否 | 是 | 无输入时优雅退出 | |
maxNoMatch | [0-9]* | 否 | 是 | 无匹配时优雅退出 | |
echo | true/false | 否 | 是 | 播放选项 | |
config | xxx-cfg.xml | 是 | 是 | 组件的配置文件 | |
numNBest | [0-9]* | 否 | 是 | 请求的 N-best 值的最大数量 | |
minConfidence | [0-9][0-9].[0-9]*F | 否 | 是 | 识别输出的最小置信度值 | |
submit | self-URI | 否 | 是 | 结果提交的位置 | |
subdialog | true/false | 否 | 是 | 子对话选项 | |
用法 | <rdc:mortgageType id="myMortgageType" echo="true" /> | ||||
示例 | 请参见 rdc-examples 应用程序中的 mortgageType-test.jsp。 |
||||
number - 数字 | |||||
|
|||||
属性 | 名称 | 值 | 必需 | 运行时表达式求值 | 摘要 |
id | 某个名称 | 是 | 否 | 组件 ID | |
submit | self-URI | 否 | 是 | 结果提交的位置 | |
config | xxx-cfg.xml | 否 | 是 | 组件的配置文件 | |
numNBest | [0-9]* | 否 | 是 | 请求的 N-best 值的最大数量 | |
minConfidence | [0-9][0-9].[0-9]*F | 否 | 是 | 识别输出的最小置信度值 | |
echo | true/false | 否 | 是 | 播放选项 | |
locale | [language](-[country])? | 否 | 是 | RDC 区域设置 | |
maxNoInput | [0-9]* | 否 | 是 | 无输入时优雅退出 | |
maxNoMatch | [0-9]* | 否 | 是 | 无匹配时优雅退出 | |
initial | [0-9]*.[0-9]* | 否 | 是 | alpha 的默认值 | |
confirm | true/false | 否 | 是 | 确认选项 | |
minValue | [0-9]*.[0-9]* | 否 | 是 | 可接受的最小值 | |
maxValue | [0-9]*.[0-9]* | 否 | 是 | 可接受的最大值 | |
subdialog | true/false | 否 | 是 | 子对话选项 | |
用法 | <rdc:number id="myNumber" minValue="0" maxValue="100" /> | ||||
示例 | 请参见 rdc-examples 应用程序中的 number-test.jsp。 |
||||
percent - 百分比 | |||||
|
|||||
属性 | 名称 | 值 | 必需 | 运行时表达式求值 | 摘要 |
id | 某个名称 | 是 | 否 | 组件 ID | |
minPercent | [0-9]{1,2} | 否 | 是 | 可接受的最小百分比 | |
maxPercent | [0-9]{1,2} | 否 | 是 | 可接受的最大百分比 | |
initial | [0-9]{1,2} | 否 | 是 | 百分比的默认值 | |
locale | [language](-[country])? | 否 | 是 | RDC 区域设置 | |
confirm | true/false | 否 | 是 | 确认选项 | |
echo | true/false | 否 | 是 | 播放选项 | |
maxNoInput | [0-9]* | 否 | 是 | 无输入时优雅退出 | |
maxNoMatch | [0-9]* | 否 | 是 | 无匹配时优雅退出 | |
config | xxx-cfg.xml | 否 | 是 | 组件的配置文件 | |
numNBest | [0-9]* | 否 | 是 | 请求的 N-best 值的最大数量 | |
minConfidence | [0-9][0-9].[0-9]*F | 否 | 是 | 识别输出的最小置信度值 | |
submit | self-URI | 否 | 是 | 结果提交的位置 | |
subdialog | true/false | 否 | 是 | 子对话选项 | |
用法 | <rdc:percent id="myPercent" minPercent="10" maxPercent="75" /> | ||||
示例 | 请参见 rdc-examples 应用程序中的 percent-test.jsp。 |
||||
select1 - 选择一个 | |||||
|
|||||
属性 | 名称 | 值 | 必需 | 运行时表达式求值 | 摘要 |
id | 某个名称 | 是 | 否 | 组件 ID | |
optionList | *-opt.xml | 是 | 是 | 用户将被要求从中选择的列表 | |
initial | 某个选项 | 否 | 是 | 默认选择 | |
confirm | true/false | 否 | 是 | 确认选项 | |
echo | true/false | 否 | 是 | 播放选项 | |
locale | [language](-[country])? | 否 | 是 | RDC 区域设置 | |
config | xxx-cfg.xml | 否 | 是 | 组件的配置文件 | |
numNBest | [0-9]* | 否 | 是 | 请求的 N-best 值的最大数量 | |
minConfidence | [0-9][0-9].[0-9]*F | 否 | 是 | 识别输出的最小置信度值 | |
maxNoInput | [0-9]* | 否 | 是 | 无输入时优雅退出 | |
maxNoMatch | [0-9]* | 否 | 是 | 无匹配时优雅退出 | |
submit | self-URI | 否 | 是 | 提交 URL | |
subdialog | true/false | 否 | 是 | 子对话选项 | |
用法 | <rdc:select1 id="myChoice" config="myConfig.xml" optionsList="myOptions.xml" echo="true" /> | ||||
示例 | 请参见 rdc-examples 应用程序中的 select1-test.jsp。 |
||||
ssn - ssn | |||||
|
|||||
属性 | 名称 | 值 | 必需 | 运行时表达式求值 | 摘要 |
id | 某个名称 | 是 | 否 | 组件 ID | |
pattern | 一个正则表达式 | 否 | 是 | 表示有效社会安全号码集合的正则表达式 | |
config | xxx-cfg.xml | 否 | 是 | 组件的配置文件 | |
echo | true/false | 否 | 是 | 播放选项 | |
confirm | true/false | 否 | 是 | 确认选项 | |
locale | [language](-[country])? | 否 | 是 | RDC 区域设置 | |
initial | xxxxxxxxxx | 否 | 是 | SSN 的默认值 | |
numNBest | [0-9]* | 否 | 是 | 请求的 N-best 值的最大数量 | |
minConfidence | [0-9][0-9].[0-9]*F | 否 | 是 | 识别输出的最小置信度值 | |
maxNoInput | [0-9]* | 否 | 是 | 无输入时优雅退出 | |
maxNoMatch | [0-9]* | 否 | 是 | 无匹配时优雅退出 | |
submit | submit-uri | 否 | 是 | JSP 页面的 URI | |
subdialog | true/false | 否 | 是 | 子对话选项 | |
用法 | <rdc:ssn id="mySSN" /> | ||||
示例 | 请参见 rdc-examples 应用程序中的 ssn-test.jsp。 |
||||
time - 时间 | |||||
|
|||||
属性 | 名称 | 值 | 必需 | 运行时表达式求值 | 摘要 |
id | 某个名称 | 是 | 否 | 组件 ID | |
minTime | xxxxxx | 否 | 是 | 可接受的最小时间 | |
maxTime | xxxxxx | 否 | 是 | 可接受的最大时间 | |
initial | xxxxxx | 否 | 是 | 时间的默认值 | |
confirm | true/false | 否 | 是 | 确认选项 | |
echo | true/false | 否 | 是 | 播放选项 | |
locale | [language](-[country])? | 否 | 是 | RDC 区域设置 | |
config | xxx-cfg.xml | 否 | 是 | 组件的配置文件 | |
numNBest | [0-9]* | 否 | 是 | 请求的 N-best 值的最大数量 | |
minConfidence | [0-9][0-9].[0-9]*F | 否 | 是 | 识别输出的最小置信度值 | |
maxNoInput | [0-9]* | 否 | 是 | 无输入时优雅退出 | |
maxNoMatch | [0-9]* | 否 | 是 | 无匹配时优雅退出 | |
submit | self-URI | 否 | 是 | 结果提交的位置 | |
subdialog | true/false | 否 | 是 | 子对话选项 | |
用法 | <rdc:time id="myTime" minTime="xx30x" maxTime="xx60x" confirm="true" /> | ||||
示例 | 请参见 rdc-examples 应用程序中的 time-test.jsp。 |
||||
usMajorCity - 美国主要城市 | |||||
|
|||||
属性 | 名称 | 值 | 必需 | 运行时表达式求值 | 摘要 |
id | 一个名称 | 是 | 否 | 组件 ID | |
config | xxx-cfg.xml | 否 | 是 | 组件的配置文件 | |
numNBest | [0-9]* | 否 | 是 | 请求的 N-best 值的最大数量 | |
minConfidence | [0-9][0-9].[0-9]*F | 否 | 是 | 识别输出的最小置信度值 | |
echo | true/false | 否 | 是 | 播放选项 | |
locale | [language](-[country])? | 否 | 是 | RDC 区域设置 | |
maxNoInput | [0-9]* | 否 | 是 | 无输入时优雅退出 | |
maxNoMatch | [0-9]* | 否 | 是 | 无匹配时优雅退出 | |
initial | 美国主要城市 | 否 | 是 | 城市的默认值 | |
confirm | true/false | 否 | 是 | 确认选项 | |
submit | submit-uri | 否 | 是 | JSP 页面的 URI | |
subdialog | true/false | 否 | 是 | 子对话选项 | |
用法 | <rdc:usMajorCity id="myCity" echo="true" /> | ||||
示例 | 请参见 rdc-examples 应用程序中的 usMajorCity-test.jsp。 |
||||
usState - 美国州 | |||||
|
|||||
属性 | 名称 | 值 | 必需 | 运行时表达式求值 | 摘要 |
id | 一个名称 | 是 | 否 | 组件 ID | |
config | xxx-cfg.xml | 否 | 是 | 组件的配置文件 | |
numNBest | [0-9]* | 否 | 是 | 请求的 N-best 值的最大数量 | |
minConfidence | [0-9][0-9].[0-9]*F | 否 | 是 | 识别输出的最小置信度值 | |
echo | true/false | 否 | 是 | 播放选项 | |
locale | [language](-[country])? | 否 | 是 | RDC 区域设置 | |
maxNoInput | [0-9]* | 否 | 是 | 无输入时优雅退出 | |
maxNoMatch | [0-9]* | 否 | 是 | 无匹配时优雅退出 | |
initial | 美国州 | 否 | 是 | 州的默认值 | |
confirm | true/false | 否 | 是 | 确认选项 | |
submit | submit-uri | 否 | 是 | JSP 页面的 URI | |
subdialog | true/false | 否 | 是 | 子对话选项 | |
用法 | <rdc:usState id="myState" /> | ||||
示例 | 请参见 rdc-examples 应用程序中的 usState-test.jsp。 |
||||
zipCode - 邮政编码 | |||||
|
|||||
属性 | 名称 | 值 | 必需 | 运行时表达式求值 | 摘要 |
id | 一个名称 | 是 | 否 | 组件 ID | |
config | xxx-cfg.xml | 否 | 是 | 组件的配置文件 | |
numNBest | [0-9]* | 否 | 是 | 请求的 N-best 值的最大数量 | |
minConfidence | [0-9][0-9].[0-9]*F | 否 | 是 | 识别输出的最小置信度值 | |
echo | true/false | 否 | 是 | 播放选项 | |
locale | [language](-[country])? | 否 | 是 | RDC 区域设置 | |
maxNoInput | [0-9]* | 否 | 是 | 无输入时优雅退出 | |
maxNoMatch | [0-9]* | 否 | 是 | 无匹配时优雅退出 | |
confirm | true/false | 否 | 是 | 确认选项 | |
initial | 邮政编码 | 否 | 是 | 邮政编码的默认值 | |
length | 一个正整数 | 否 | 是 | 邮政编码中的位数 | |
pattern | 一个正则表达式 | 否 | 是 | 表示有效邮政编码集合的正则表达式 | |
submit | submit-uri | 否 | 是 | JSP 页面的 URI | |
subdialog | true/false | 否 | 是 | 子对话选项 | |
用法 | <rdc:zipCode id="myZip" confirm="true" echo="true" /> | ||||
示例 | 请参见 rdc-examples 应用程序中的 zipCode-test.jsp。 |
||||
creditcardInfo - 信用卡信息 | |||||
|
|||||
属性 | 名称 | 值 | 必需 | 运行时表达式求值 | 摘要 |
id | 某个名称 | 是 | 否 | 组件 ID | |
submit | self-URI | 否 | 是 | 结果提交的位置 | |
subdialog | true/false | 否 | 是 | 子对话选项 | |
mode | FULL | 否 | 是 | 此信用卡信息复合组件将操作的模式 | |
locale | [language](-[country])? | 否 | 是 | RDC 区域设置 | |
initial | CreditCardData | 否 | 是 | 默认信用卡数据 | |
config | xxx-cfg.xml | 否 | 是 | 此复合组件的配置文件 | |
用法 | <rdc:creditcardInfo id="myCCInfo" mode="short" /> | ||||
示例 | 请参见 rdc-examples 应用程序中的 creditcardInfo-test.jsp。 |
||||
dateRange - 日期范围 | |||||
|
|||||
属性 | 名称 | 值 | 必需 | 运行时表达式求值 | 摘要 |
id | 某个名称 | 是 | 否 | 组件 ID | |
submit | self-URI | 否 | 是 | 结果提交的位置 | |
subdialog | true/false | 否 | 是 | 子对话选项 | |
initial | DateRangeData | 否 | 是 | 默认日期范围 | |
config | xxx-cfg.xml | 否 | 是 | 此复合组件的配置文件 | |
locale | [language](-[country])? | 否 | 是 | RDC 区域设置 | |
subdialog | true/false | 否 | 是 | 子对话选项 | |
用法 | <rdc:dateRange id="myDateRange" /> | ||||
示例 | 请参见 rdc-examples 应用程序中的 dateRange-test.jsp。 |
||||
mortgage - 抵押贷款 | |||||
|
|||||
属性 | 名称 | 值 | 必需 | 运行时表达式求值 | 摘要 |
id | 某个名称 | 是 | 否 | 组件 ID | |
submit | self-URI | 否 | 是 | 结果提交的位置 | |
subdialog | true/false | 否 | 是 | 子对话选项 | |
initial | MortgageData | 否 | 是 | 默认抵押贷款数据 | |
config | xxx-cfg.xml | 否 | 是 | 此复合组件的配置文件 | |
locale | [language](-[country])? | 否 | 是 | RDC 区域设置 | |
用法 | <rdc:mortgage id="myMortgage" /> | ||||
示例 | 请参见 rdc-examples 应用程序中的 mortgage-test.jsp。 |
||||
group | |||||
作为容器,托管多个 RDC 并使用可插拔的对话管理策略管理它们之间的对话 |
|||||
标签体 | 无脚本 | ||||
属性 | 名称 | 必需 | 运行时表达式求值 | 可用性 | |
id | 是 | 是 | |||
此组的唯一标识符。 |
|||||
strategy | 是 | 否 | |||
可插拔对话管理策略的完全限定类名。 |
|||||
config | 否 | 是 | |||
特定于策略的配置属性。 |
|||||
submit | 否 | 是 | |||
此容器将向其提交 *中间* 结果的 URI。 |
|||||
变量 | 无 | ||||
用法 | <rdc:group id="myDateTime" strategy="org.apache.taglibs.rdc.dm.SimpleDirectedDialog"> <rdc:date id="myDate" /> <rdc:time id="myTime" /> </rdc:group> | ||||
示例 | rdc-examples 应用程序提供了多个 <rdc:group> 示例。示例中包含以下对话管理策略:
|
||||
peek | |||||
查看堆栈顶部元素。 |
|||||
标签体 | EMPTY | ||||
属性 | 名称 | 必需 | 运行时表达式求值 | 可用性 | |
var | 是 | 否 | |||
保存 peek 操作结果的变量。 |
|||||
stack | 是 | 是 | |||
保存目标堆栈的变量。 |
|||||
变量 | 名称 | 作用域 | 可用性 | ||
var 属性值 | 从标签开始到页面结束 | ||||
属性 | 无 | ||||
用法 | <rdc:peek var="stateMap" stack="${requestScope.rdcStack}"/> |
pop | |||||
从堆栈中弹出顶部元素。 |
|||||
标签体 | EMPTY | ||||
属性 | 名称 | 必需 | 运行时表达式求值 | 可用性 | |
var | 是 | 否 | |||
保存将被弹出的值的变量。 |
|||||
stack | 是 | 是 | |||
保存目标堆栈的变量。 |
|||||
变量 | 名称 | 作用域 | 可用性 | ||
var 属性值 | 从标签开始到页面结束 | ||||
属性 | 无 | ||||
用法 | <rdc:pop var="discard" stack="${rdcStack}"/> |
push | |||||
将元素推入堆栈。 |
|||||
标签体 | EMPTY | ||||
属性 | 名称 | 必需 | 运行时表达式求值 | 可用性 | |
stack | 是 | 是 | |||
保存目标堆栈的变量。 |
|||||
element | 是 | 是 | |||
保存正在被推送的值的变量。 |
|||||
变量 | 无 | ||||
用法 | <rdc:push stack="${rdcStack}" element="${dialogMap}"/> |
task - 任务标签 | |
|
|
用法 | <rdc:task map="${taskmap}"> <rdc:date id="myDate" confirm="true" /> </rdc:task> |
示例 | 请参见 rdc-examples 应用程序中的 task-test.jsp。 |
expand | |||||
将包含使用自定义语法 "#{...}" 的表达式文本评估为 JSP 2.0 EL 表达式 |
|||||
标签体 | 无脚本 | ||||
属性 | 无 | ||||
变量 | 无 | ||||
用法 | <rdc:expand>#{model.utterance} </rdc:expand> |
get-configuration | |||||
从此 RDC 的配置文件中获取与给定 XPath 对应的元素 |
|||||
标签体 | EMPTY | ||||
属性 | 名称 | 必需 | 运行时表达式求值 | 可用性 | |
xml | 是 | 是 | |||
此组件的已解析配置文件。 |
|||||
locator | 是 | 是 | |||
感兴趣元素的 XPath。 |
|||||
变量 | 无 | ||||
用法 | <rdc:get-configuration xml="${parsedDoc}" locator="/config/input/property-list/property" /> |
get-default-config | |||||
获取此组件的默认配置。 |
|||||
标签体 | EMPTY | ||||
属性 | 名称 | 必需 | 运行时表达式求值 | 可用性 | |
name | 是 | 是 | |||
此组件默认配置文件的 URI。 |
|||||
model | 是 | 是 | |||
此组件的数据模型。 |
|||||
变量 | 无 | ||||
用法 | <rdc:get-default-config name="${defaultConfig}" model="${model}" /> |
get-resource | |||||
从资源包中获取由键指定的资源。 |
|||||
标签体 | EMPTY | ||||
属性 | 名称 | 必需 | 运行时表达式求值 | 可用性 | |
bundle | 是 | 是 | |||
要查找的 ResourceBundle。 |
|||||
key | 是 | 是 | |||
要检索的属性的键。 |
|||||
var | 是 | 是 | |||
将保存属性值的变量。 |
|||||
isGrammarURI | 否 | 是 | |||
跳过 RDC 语法 URI 特定处理的能力。 |
|||||
变量 | 无 | ||||
用法 | <rdc:get-resource bundle="${rdcResourceBundle}" key="my.property.key" var="myResourceString" /> |
include-fsm-fragment | |||||
包含此 RDC 模板实例的标签片段。 |
|||||
标签体 | EMPTY | ||||
属性 | 名称 | 必需 | 运行时表达式求值 | 可用性 | |
template | 是 | 是 | |||
此模板实例的数据模型。 |
|||||
context | 是 | 是 | |||
宿主标签文件的 pageContext。 |
|||||
变量 | 无 | ||||
用法 | <rdc:include-fsm-fragment template="${model}" context="${pageContext}" /> |
struts-errors | |||||
播放前一个 Struts 动作的所有错误消息。 |
|||||
标签体 | EMPTY | ||||
属性 | 无 | ||||
变量 | 无 | ||||
用法 | <rdc:struts-errors /> |
struts-submit | |||||
将 namelist 中指定的 RDC 值提交到 Struts 层。 |
|||||
标签体 | EMPTY | ||||
属性 | 名称 | 必需 | 运行时表达式求值 | 可用性 | |
submit | 是 | 是 | |||
提交结果的 URI(一个 Struts 映射)。 |
|||||
context | 是 | 是 | |||
宿主 JSP 的 pageContext。 |
|||||
namelist | 否 | 是 | |||
应提交其值的 RDC 列表。 |
|||||
clearlist | 否 | 是 | |||
应清除其值的 RDC 列表。列表中的项可以是组件或容器。 |
|||||
dialogMap | 否 | 是 | |||
宿主 JSP 使用的 RDC 对话映射。 |
|||||
变量 | 无 | ||||
用法 | <rdc:struts-submit submit=${self}" context="${pageContext}" namelist="myDate myTime"/> |
comment - 注释标签 | |
|
|
用法 | <rdc:comment> 这是一个 RDC 注释 </rdc:comment> |
configure - 配置标签 | |
|
|
用法 | <rdc:configure model="${model}" config="${config}" defaultConfig="META-INF/tags/rdc/config/date.xml" /> |
extract-params - 提取参数标签 | |
|
|
用法 | <rdc:extract-params target="${model}" parameters="${model.paramsMap}"/> |
fsm-confirm - fsm 确认标签 | |
|
|
用法 | <rdc:fsm-confirm model="${model}" /> |
fsm-input - fsm 输入标签 | |
|
|
用法 | <rdc:fsm-input model="${model}" /> |
fsm-run - fsm 运行标签 | |
|
|
用法 | <rdc:fsm-run model="${model}" /> |
hello - hello world 标签 | |
|
|
用法 | <rdc:hello name="whole wide world" /> |
pause - 暂停标签 | |||||
|
|||||
属性 | 名称 | 值 | 必需 | 运行时表达式求值 | 摘要 |
id | 某个名称 | 是 | 否 | 组件 ID | |
locale | [language](-[country])? | 否 | 是 | RDC 区域设置 | |
config | xxx-cfg.xml | 否 | 是 | 组件的配置文件 | |
minConfidence | [0-9][0-9].[0-9]*F | 否 | 是 | 识别输出的最小置信度值 | |
用法 | <rdc:pause id="myPause" /> |
set-config-composite - 设置配置复合标签 | |
|
|
用法 | <rdc:set-config-composite model="${model}" context="${pageContext}" config="${config}" /> |
set-grammar - 设置语法标签 | |
|
|
用法 | <rdc:set-grammar model="${model}" bundle="${rdcResourceBundle}" key="my.property.key" /> |
setup-results - 设置结果标签 | |
|
|
用法 | <rdc:setup-results model="${model}" submit="${submit}" minConfidence="${minConfidence}" numNBest="${numNBest}" /> |
subdialog-return - 如果作为子对话调用,则生成返回语句 | |
|
|
用法 | <rdc:subdialog-return model="${model}" /> |
template - RDC 模板 | |||||
|
|||||
属性 | 名称 | 值 | 必需 | 运行时表达式求值 | 摘要 |
id | 某个名称 | 是 | 否 | 组件 ID | |
grammar | xxx.grxml 或 Grammar 对象数组 | 是 | 是 | 此实例所需的一个或多个语法,作为 URI 或 Grammar 对象数组传递 | |
config | xxx-cfg.xml | 是 | 是 | 组件的配置文件 | |
constraints | 实例特定映射 | 否 | 是 | 此实例返回值上的约束,作为 Map 传递 | |
bean | 完全限定数据模型类 | 否 | 是 | 此实例的数据模型 | |
data | 实例特定对象 | 否 | 是 | 此实例所需的外部数据 | |
fsmFragment | FSM 片段的 URI | 否 | 是 | 此组件的自定义 FSM | |
initial | 实例特定 | 否 | 是 | 此实例的默认值 | |
confirm | true/false | 否 | 是 | 确认选项 | |
echo | true/false | 否 | 是 | 播放选项 | |
numNBest | [0-9]* | 否 | 是 | 请求的 N-best 值的最大数量 | |
minConfidence | [0-9][0-9].[0-9]*F | 否 | 是 | 识别输出的最小置信度值 | |
maxNoInput | [0-9]* | 否 | 是 | 无输入时优雅退出 | |
maxNoMatch | [0-9]* | 否 | 是 | 无匹配时优雅退出 | |
submit | self-URI | 否 | 是 | 结果提交的位置 | |
subdialog | true/false | 否 | 是 | 子对话选项 | |
用法 | <rdc:template id="myTemplate" grammar="grammar/myGrammar.grxml" config="config/myConfig.xml" /> | ||||
示例 | 请参见 rdc-examples 应用程序中的 simple-template-test.jsp。 |
||||
有关此自定义标签库标签用法的示例,请参见示例应用程序 taglibs-rdc-examples.war。
Java 程序员可以以 javadocs 形式查看此标签库的 Java 类文档。
查看此标签库的完整修订历史。