此样本包含下列三个变换:
| 变换 | 描述 |
|---|---|
| 类至文本 > 控制台 | 此变换接受统一建模语言(UML)类作为源,并将类的描述写至包括类的名称、属性和操作及其参数的“控制台”视图。 |
| 类至文本 > 文件 | 此变换与“类至文本控制台”变换相同,但此变换会将结果写至文件而不是“控制台”视图。 |
| 状态至 JSP | 此变换接受状态机作为源,并为具有 ScreenFlow 概要文件中某个构造型的每个状态生成一个 JavaServer Pages(JSP)页。 |
此变换接受 UML 类、包或模型作为源,并将类的名称、属性和操作以及操作参数写至“控制台”视图或文件。如果选择将模型或包作为源,则变换会写入模型或包所包含的所有类的详细信息。
此变换接受状态机中的 UML 状态作为源,并使用 Java 发射器模板(JET)生成 JSP 文件格式的 Web 页面。如果选择状态机或区域作为源,则对于状态机或区域中每个应用了 ScreenFlow 概要文件中的构造型的状态,变换将为其生成 JSP 文件。
此样本变换显示如何执行下列操作:
要让源状态机为变换作好准备,必须对包含状态机的 UML 模型应用 ScreenFlow 概要文件,并通过对其状态应用 ScreenFlow 概要文件中的构造型来标记状态机。ScreenFlow 概要文件包含四个构造型:form、editform、selectlist 和 display。这些构造型可确定所生成页的动态内容的显示样式。该样本使用构造型来确定显示样式是可编辑表单还是可选择列表等等。如果对一个状态应用多个构造型,则变换只考虑第一个构造型。
该样本还会使用构造型的属性来确定通过 JSP 页交换的数据。仅当对状态应用了四个构造型的其中一个时,变换才会生成对应于状态的 JSP 页。如果 JSP 文件已存在,则变换在运行时不会将它们覆盖。可通过将变换属性“覆盖输出文件”的值设置为 true 来更改有关变换是否覆盖文件的设置。
ScreenFlow 概要文件
下表显示 ScreenFlow 概要文件中的构造型及其属性。表中的值仅供演示之用。
| 构造型 | 基类 | 属性:值 | 描述 |
|---|---|---|---|
| «display» | 状态 | entity:Contact fields:name, address | 指示所生成 JSP 页显示联系人详细信息:姓名和地址 |
| «editform» | 状态 | entity:Contact fields:name, address | 指示所生成 JSP 页包含可编辑表单,用户可在其中输入或编辑联系人详细信息:姓名和地址 |
| «form» | 状态 | fields:userName | 指示所生成 JSP 页包含用于输入用户姓名的表单 |
| «selectlist» | 状态 | entity:Contact fields:name, address selectfield:id | 指示所生成 JSP 页包含联系人列表,可用于选择带有特定标识的联系人 |