在 JSP 中设计用户界面
创建页面流时,WebLogic Workshop 提供各种标记库,您可以使用其中包含的标记设计 JSP。页面流向导生成的每个 JSP 文件都定义为包括引用标记库的 <% taglib...> 语句。例如:
<!--由 WebLogic Workshop 生成-->
<%@ page language="java" contentType="text/html;charset=UTF-8"%>
<%@ taglib uri="netui-tags-databinding.tld" prefix="netui-data"%>
<%@ taglib uri="netui-tags-html.tld" prefix="netui"%>
<%@ taglib uri="netui-tags-template.tld" prefix="netui-template"%>
<netui:html>
<head>
<title>
Web 应用程序页
</title>
</head>
<body>
<p>
新建 Web 应用程序页
</p>
</body>
</netui:html>
注意:WebLogic Workshop 将 TLD 和 TLDX 库文件置于 Web 项目的 /WEB-INF 文件夹下。 TLD 文件是 J2EE 标准标记库描述符文件。TLDX 文件是 WebLogic Workshop 的特定文件,包含有关标记在 IDE 中应如何起作用的信息。此信息包括显示、属性表单和其他信息。
在 IDE 中,如果 JSP 文件在设计视图或源代码视图中打开,则可以在选项板窗口中获取标记。例如:
可以将这些标记从“选项板”窗口拖放到设计视图中。在某些情况下,会出现一个对话框窗口,允许您将操作分配给使用表单 Bean 的标记。例如:
注意:在将标记图标从“选项板”窗格移动到“设计视图”画布时,您会注意到,在“设计视图”画布中,插入点是用垂直线显示的。请记住此插入点,因为它将决定标记代码在 JSP 中的初始位置。
JSP 设计器是为开发人员设计的,开发人员需要快速汇编基于 NetUI、NetUI 数据绑定和 NetUI 模板标记的 JSP 页。作为一个开发人员,您可以创建这些页的初稿,并决定表单操作和其他上下文以将简单或复杂的数据显示给用户。在 JSP 设计器中,可以利用“放置向导”和(源代码视图中的)其他代码完成工具以协助开发工作。JSP 设计视图并不是设计用作完全的 JSP 图形编辑器,您可以切换到源代码视图以输入文本,或者使用您喜欢的 JSP 编辑产品来完成页,为显示添加更多润色。
本主题描述“NetUI”库和“NetUI 模板”库中的各种元素。这些库包含用于设计用户界面(如标签、单选按钮和链接)的典型组件。这些库中的许多组件,尤其是表单组件,允许您为用户提供数据或从用户引出数据。
此外,“NetUI 数据绑定”库包含用于向用户显示复杂数据的专用组件。NetUI 数据绑定标记另行在 JSP 中显示复杂数据集中讨论。
注意:“选项板”窗口还提供一个称为“HTML”的标记库,该库包含几种标准 HTML 标记。这些 HTML 标记不具有可以与页面流运行时进行交互的特殊特性。
NetUI 标记
“选项板”窗口中的 NetUI 组件存储在 netui-tag-html.tld 库中,此库是默认导入 JSP 的:
<%@ taglib uri="netui-tags-html.tld" prefix="netui"%>
将 NetUI 组件添加到 JSP 时,您会注意到组件名称的前缀为“netui”,例如:
<netui:button value="Start" action="letsGo" type="submit"/>
下表总结了 NetUI 标记的常见用途。有关标记及其特性的详细描述,请参阅 JSP 标记引用,也可以在源代码视图中将光标置于标记内部并按 F1 键:
标记的典型用途 |
标记名 |
概要 |
导航 |
anchor |
生成指向特定 URI 的 URL 编码超链接。 |
|
imageAnchor |
生成一个用 URL 编码的超链接,链接到指定 URI,此 URI 有一个作为正文包含进来的图像。 |
|
button |
生成名称是只读的按钮,通常用于重置或提交表单,或触发特定操作(如“signing out”)。 |
|
imageButton |
生成一个作为按钮的图像,包括图像的 URL 和(可选)悬停图像,通常用于提交表单。 |
读/写数据(使用 dataSource、defaultValue 特性) |
form |
代表一个与表单 Bean 关联的输入表单,此表单 Bean 的属性与表单的各个字段相对应。 |
|
checkBox |
生成一个绑定到表单 Bean 属性的复选框。 |
|
checkBoxGroup |
对 CheckBoxOption 集合进行归组,并处理其值的数据绑定。有关示例,请参阅页面流详细示例。 |
|
checkBoxOption |
一个复选框,其状态由包含它的 checkBoxGroup 确定。 |
|
hidden |
生成隐藏表单字段。 |
|
radioButtonGroup |
对 RadioButtonOption 集合进行归组,并处理其值的数据绑定。有关示例,请参阅页面流详细示例。 |
|
radioButtonOption |
单选按钮,状态由包含它的 RadioButtonGroup 确定。 |
|
select |
渲染下拉列表。有关示例,请参阅页面流详细示例。 |
|
selectOption |
选项,状态由包含它的 select 组件确定。 |
|
textArea |
渲染数据绑定的 TextArea。 |
|
textBox |
渲染数据绑定的 TextBox。 |
错误报告 |
bindingUpdateErrors |
开发时帮助标记,显示发送表单时发生的数据绑定更新错误的相关消息。这些消息显示在命令窗口中。默认情况下,此标记在服务器以生产模式运行时是禁用的。 |
|
error |
使用给定错误键值渲染单个错误消息。有关详细信息,请参阅验证用户输入。 |
|
errors |
渲染发现的错误消息集。有关详细信息,请参阅验证用户输入。 |
|
exceptions |
渲染已格式化的异常消息。 |
参数 |
parameter |
将 URL 参数写入其父标记中的 URL。有关示例,请参阅在页面流中使用数据绑定中的 url 数据绑定上下文。 |
|
parameterMap |
将 URL 参数映射中的每个参数写入其父标记中的 URL。 |
其他 |
base |
提供此页中每个 URL 的基。 |
|
content |
显示只读的标准或动态生成的文本。 |
|
image |
生成图像。 |
|
label |
根据数据绑定表达式或字面值生成样式化的只读文本。 |
|
node |
实例化 TreeNode 对象,该对象将要添加到父标记(树或其它节点)中。 |
|
tree |
渲染一个由 TreeNode 对象集代表的树控件。 |
Netui 模板标记
“选项板”窗口中的 NetUI 模板组件存储在 netui-tag-template.tld 库中,此库是默认导入 JSP 的:
<%@ taglib uri="netui-tags-template.tld" prefix="netui-template"%>
将 NetUI 模板组件添加到 JSP 时,您会注意到组件名称的前缀为“netui-template”,例如:
<netui-template:visible visible="true">Is Visible</netui-template:visible>
此库中的标记通常用于定义地点模板。模板页是一个 JSP 页,用于定义一组页的总体外观及感觉。这是通过提供总体布局结构、样式和页面设计,并定义内容占位符完成的。这些占位符称为部分。内容页是一个包含内容的 JSP 页。内容页提供插入模板内容的各个部分。将内容页和模板页进行组合,可以创建内容的总体外观及感觉。模板的一大优势在于可以更改一组页的外观及感觉,而不必强制修改每个页。
NetUI 模板库定义了两类标记集。第一类用于在 JSP 模板页中定义占位符(这是内容页提供内容的地方)。第二类标记集用于内容页内部,可以指示要使用的模板和定义将要在模板内显示的内容。
下表总结了 NetUI 模板标记的常见用途。有关标记及其特性的详细描述,请参阅 JSP 标记引用,也可以在源代码视图中将光标置于标记内部并按 F1 键:
标记集 |
标记名 |
概要 |
模板页 |
attribute |
定义模板文件中的特性。与内容 JSP 中的 setAttribute 联合使用。 |
|
includeSection |
定义模板文件中的一个部分,使用 section 标记,内容 JSP 可以进一步填充此部分。 |
内容页 |
setAttribute |
设置在模板文件中声明的特性的值。 |
|
section |
引用 includeSection 并定义要包括的内容。 |
|
template |
指定要使用的模板。 |
二者之一 |
visibility |
使一个部分可见或不可见。 |
要查看使用模板标记的样例应用程序,请转至下列页面流并检查 JSP 文件:
<WEBLOGIC_HOME>\samples\workshop\SamplesApp\WebApp\simpleflow
另请参阅 template.jsp 和 header.jsp 文件,它们位于:
<WEBLOGIC_HOME>\samples\workshop\SamplesApp\WebApp\resources\jsp
posted on 2005-12-31 10:03
Parmy 阅读(1709)
评论(4) 编辑 收藏