Service Registry 包括几个显示在“选择预定义查询”下拉式列表的“Web 控制台搜索”表单中的预定义查询。作为管理员,您可以根据具体的 Registry 安装向下拉式列表中添加新的查询。
使用 Web 控制台将 AdhocQuery 对象发布到 Registry 中。
为查询指定的名称和说明将显示在预定义查询的下拉式列表中。在查询的 SQL 语句中,通过将用户提供的数据用双重单引号引起来指定此类数据的占位符,如下所示:
select * from registryobject where id = ''$lid''
将 AdhocQuery 对象的唯一标识符和 SQL 语句中所有占位符记录下来。
更改到目录 RegistryDomain-base/3.0/jaxr-ebxml。
用文本编辑器打开文件 registry-browser-config.xml。
使用以下格式将条目添加至 registry-browser-config.xml 文件。为 SQL 语句中的每个占位符指定 Parameter 元素。
<Query> <AdhocQueryRef id="unique_identifier"/> <Parameter parameterName="$placeholder_name" datatype="string"> <rim:Name> <rim:LocalizedString xml:lang="en" charset="UTF-8" value="parameter_name_in_en_locale"/> <rim:LocalizedString xml:lang="fr" charset="UTF-8" value="parameter_name_in_fr_locale"/> </rim:Name> <rim:Description> <rim:LocalizedString xml:lang="en" charset="UTF-8" value="parameter_description_in_en_locale"/> <rim:LocalizedString xml:lang="fr" charset="UTF-8" value="parameter_description_in_fr_locale"/> </rim:Description> </Parameter> ... </Query>
unique_identifier 是 AdhocQuery 对象的唯一标识符。
每个参数的 parameterName 属性值必须来自查询的 SQL 语句的占位符。
datatype 属性可以拥有以下任一值:
string:该参数显示为“搜索”表单中的文本字段。
taxonomyElement:该参数显示为“搜索”表单中的下拉式列表。如果指定 taxonomyElement 数据类型,Name 和 Description 元素必须后跟 SlotList 元素,如下所示:
<rim:SlotList> <rim:Slot name="domain"> <rim:ValueList> <rim:Value> classification_scheme_or_concept_id </rim:Value> </rim:ValueList> </rim:Slot> </rim:SlotList>
classification_scheme_or_concept_id 是分类方案或概念的唯一标识符,它们的概念(或子概念)必须显示在下拉式列表中。如果分类方案尚未存在于 Registry 中,您必须将其发布。
插槽名称必须为 "domain"。
boolean:该参数显示为“搜索”表单中的复选框。
如果 datatype 为 string 或 boolean,您还可以将 defaultValue 属性添加到 Parameter 元素以指定要在“搜索”表单中显示的默认值。
为您支持的所有语言环境指定每个参数名称和说明的本地化字符串值。当前语言环境中的 parameter_name 在“搜索”表单中显示为参数的标签。
使用 registry-browser-config.xml 文件中的现有条目作为参考。
保存并关闭 registry-browser-config.xml 文件。
按照停止并重新启动用于 Registry 的 Application Server 域中的说明进行操作。