12. 示例 09B – 模型验证
以下应用程序是前一个应用程序的变体。此前,对于操作 A:
- 验证规则文件名为 A-validation.xml
- 验证错误消息文件命名为 A.properties
在此,对于模型 M 的操作 A:
- 验证规则文件命名为 M-validation.xml
- 验证错误消息文件命名为 M.properties
- A-validation.xml 文件仍然存在,但其内容将验证规则重定向到了 M-validation.xml 文件。
这些是我们对上一版本所做的唯一改动。
NetBeans 项目如下:
![]() |
- 在 [1] 中,[FormInt] 操作及其验证文件
- 在 [2] 中,其模型 [FormIntModel]、该模型的验证文件以及与该模型相关的消息。
其余部分与上一版本完全相同。
[FormInt-validation.xml] 文件内容如下:
<!--
<!DOCTYPE validators PUBLIC "-//OpenSymphony Group//XWork Validator 1.0.2//
EN" "http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">
-->
<!DOCTYPE validators PUBLIC "-//OpenSymphony Group//XWork Validator 1.0.2//
EN" "http://localhost:8084/exemple-09B/example/xwork-validator-1.0.2.dtd">
<validators>
<field name="model" >
<field-validator type="visitor">
<param name="appendPrefix">false</param>
<message/>
</field-validator>
</field>
</validators>
我们不会试图解释此文件的内容。我们将按其字面意思理解,同时牢记其目的:将验证规则委托给模型。你可能会好奇这有什么用。事实上,模型、其验证规则及其消息可能已经存在,并被不同的操作所使用。与其为不同的操作重复相同的验证规则和消息,不如将这些功能委托给模型。
[FormIntModel-validation.xml] 文件与上一版本的 [FormInt-validation.xml] 文件完全相同。
[FormIntModel.properties] 文件与上一版本的 [FormInt.properties] 文件完全相同。
欢迎读者测试此新版本。
