频 道 直 达 - 新闻 - 读书 - 培训 - 教程 - 前沿 - 组网 - 系统应用 - 安全 - 编程 - 存储 - 操作系统 - 数据库 - 服务器 - 专题 - 产品 - 案例库 - 技术圈 - 博客 - BBS
51CTO.COM_中国领先的IT技术网站
找资料:

XMLBEANS 2.0 —— 一位JAVA开发人员的视点(9)

作者: 出处:dev2dev  (  ) 砖  (  ) 好  评论 ( ) 条  进入论坛
更新时间:2006-07-25 10:53
关 键 词:XMLBEANS
阅读提示:随着面向服务架构(SOA)的出现,大部分用户不得不在应用程序中使用XML。在开发过程中,用户可能已经注意到存在多种可以分析和处理XML的模型,包括开源和专有的。所有这些模型都存在一定的优缺点。选择不适合业务需求的模型可能会导致开发时间延长并浪费资源。Apache XMLBeans是一个非常有价值的工具,它提供一种在Java中使用XML的简便方法。在本文中,我们将介绍XMLBeans以及XMLBeans 2.0中的一些有用特性。

错误代码

错误代码是2.0版本中提供的另一个伟大特性。人们已创建了许多种方法,以便将这个新特性与scomp之类的工具集成,并允许编程式地访问以便(比如说)在IDE中使用。XML Schema规范的附录C定义了一个错误代码集,它定义了非法模式条款。在分析、验证和编译过程中,可使用错误监听程序编程式地访问错误代码。以前,错误消息的详细信息和模式一致性是越小越好。此外,还添加了有关错误所在位置以及模式规范中的相关内容的详细信息。错误代码本身以“cvc-complex-type.2.2”的形式定义,可参见http://www.w3c.org/TR/xmlschema-1/#cvc-complex-type条款2.2中的解释。下面我们来看看它的工作方式。我们从一个XML Schema开始,并针对它验证一个实例。然后我们将查看旧的错误,并与接收到的最新版本进行比较。

 1 <!-- errorcode.xsd -->
2 <xs:schema
3   xmlns:xs="http://www.w3.org/2001/XMLSchema"
4   targetNamespace="http://xmlbeans.rocks.com/"
5   xmlns:tns="http://xmlbeans.rocks.com/" >
6   <xs:element name="address" type="tns:address"/>
7   <xs:complexType name="address">
8     <xs:sequence>
9       <xs:element name="number" type="xs:unsignedInt"/>
10       <xs:element name="street" type="xs:string"/>
11       <xs:choice>
12         <xs:sequence>
13           <xs:element name="city" type="xs:string"/>
14           <xs:element name="state" type="xs:string"/>
15         </xs:sequence>
16         <xs:element name="zipcode" type="xs:int"/>
17       </xs:choice>
18       <xs:element name="country" type="xs:string"/>
19     </xs:sequence>
20   </xs:complexType>
21 </xs:schema>

这个模式相当简单。注意xs:choice模型组的用法,因为下面的示例正是在对其进行定义时出错的。我们将要介绍一些错误代码,您很快就可以发现问题所在:

 1 <!-- errorcode.xml -->
2 <t:address
3   xmlns:t="http://xmlbeans.rocks.com/" >
4   <number>72</number>
5   <street>156th NE</street>
6   <country>USA</country>
7 </t:address>

除了可从命令行使用的scomp实用工具,还存在一个可针对模式验证实例的实用工具。

/home/user>validate
Validates the specified instance against the specified schema.
Contrast with the svalidate tool, which validates using a stream.
Usage: validate [-dl] [-nopvr] [-noupa] [-license]
schema.xsd instance.xml
Options:
-dl - permit network downloads for imports and
includes (default is off)
-noupa - do not enforce the unique particle attribution rule
-nopvr - do not enforce the particle valid (restriction) rule
-partial - allow partial schema type system
-license - print license information

如果使用XMLBeans的1.0版本运行validate实用工具,结果将如下所示:

        /home/user>validate errorcode.xsd errorcode.xml
errorcode.xml:0: error: Expected elements
city zipcode at the end of the content in element
address://xmlbeans.rocks.com/


共11页: 上一页 [1] [2] [3] [4] [5] [6] [7] [8] 9 [10] [11] 下一页
【内容导航】
发表
查看
我也说两句

匿名发表

(如果看不清请点击图片进行更换)


中 国 领 先 的 IT 技 术 网 站 ·
技 术 成 就 梦 想
·Ajax的应用开发 (查看118447次)
·SOA 面向服务架构 (查看60186次)
·AJAX技术汇总 (查看27661次)
·Ajax技术简介 (查看19629次)
·SOA概览 (查看16582次)
订阅技术快讯
电子杂志下载
名称:网络安全精品应用黄皮书
简介:《2007精品网络安全黄皮书》包括了9个大类24个小类, 800余篇文章,内容包含了熊猫烧香病毒、DDOS攻击、ARP病等热点问题的介绍及解决方案。从病毒查杀、防范、系统、数据等各方面的安全设置到黑客技术的了解、防范,涉及到了安全应用的全部领域, 由浅至深内容全面。
名称:Vista精品应用黄皮书
简介:《Vista精品应用黄皮书》囊括了Vista的各方面内容。此次的精简版,是将里面的内容做了提取,便于用户下载和使用。内容包含了各种Vista的安装与实施、技巧与解析以及各种Vista相关学习文档和相关软件的安全下载。该电子书是了解和应用Vista人员必备的工具手册,并且也是第一本
名称:2006中国IT论坛精品集合
简介:本书由“51CTO论坛推广联盟”制作完成。书中所有内容均来自各联盟成员的论坛(网站)。制作本书的目的是为了集中大家的优势资源,将更多更精彩的内容带给广大技术爱好者。本书是联盟成立以来制作的第一本书。
关键字阅读
频道精选
主编信箱 热线:010-66476606 告诉我们您想看的:专题 文章
关于我们 | 诚聘英才 | 联系我们 | 网站大事 | 意见反馈 | 网站地图
Copyright©2005-2007 51CTO.COM 版权所有