2012年8月14日
1.logger.info(LogUtils.getLogFmt("ResponseXML", "ResultCode",
"ErrorDesc", "ServiceType", "Version"), new Object[] {
rs.getResponseXML(), rs.getResultCode(), rs.getErrorDesc(),
rs.getServiceType(), rs.getVersion() });
2.logger.error("error when call webservice: " + serviceType, e);
3.logger.info(LogUtils.getLogFmt("RequestXML"), requestXML);
posted @
2012-09-04 18:44 小熊宝贝的每一天 阅读(177) |
评论 (0) |
编辑 收藏
ID属性的声明必须被置于最后<xs:attribute name="orderid" type="xs:string" use="required"/>
ComplexContent的用法:
<?xml version="1.0" encoding="UTF-8"?>
<xs:element name="employee" type="fullpersoninfo"/>
<xs:complexType name="personinfo">
<xs:sequence>
<xs:element name="firstname" type="xs:string"/>
<xs:element name="lastname" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="fullpersoninfo">
<xs:complexContent>
<xs:extension base="personinfo">
<xs:sequence>
<xs:element name="address" type="xs:string"/>
<xs:element name="city" type="xs:string"/>
<xs:element name="country" type="xs:string"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
posted @
2012-08-21 17:23 小熊宝贝的每一天 阅读(176) |
评论 (0) |
编辑 收藏
1.
准确说是一种Java XML数据绑定技术。
http://www.iteye.com/topic/582459:
<bind-xml name="borndate" node="attribute"/> ,name规定了这个值在xml中的显示名,而node规定了该值的xml存储方式,这里是用attribute形式进行存储,即写到了结点的属性里。
2.Castor介绍----比较详细易懂的BLOG:
http://www.open-open.com/lib/view/open1326514404093.htmlmapping.xml配置如下:
01 | <? xml version = "1.0" encoding = "UTF-8" ?> |
02 | <!DOCTYPE mapping PUBLIC "-//EXOLAB/Castor Mapping DTD Version 1.0//EN" "http://castor.org/mapping.dtd"> |
04 | < class name = "com.hoo.entity.Account" auto-complete = "true" > |
05 | < map-to xml = "Account" /> |
07 | < field name = "id" type = "integer" > |
08 | < bind-xml name = "id" node = "attribute" /> |
11 | < field name = "name" type = "string" > |
12 | < bind-xml name = "name" node = "element" /> |
15 | < field name = "email" type = "string" > |
16 | < bind-xml name = "email" node = "element" /> |
19 | < field name = "address" type = "string" > |
20 | < bind-xml name = "address" node = "element" /> |
23 | < field name = "birthday" type = "com.hoo.entity.Birthday" > |
24 | < bind-xml name = "生日" node = "element" /> |
28 | < class name = "com.hoo.entity.Birthday" > |
29 | < map-to xml = "birthday" /> |
31 | < field name = "birthday" type = "string" > |
32 | < bind-xml name = "birthday" node = "attribute" /> |
首先,看看这个xml文档的根元素是mapping,在mapping中可以配置class。也就是我们要转换的JavaObject的配置描述了。
class元素的name属性就是配置的JavaObject的classpath路径了。
关于class元素的auto-complate属性,如果这个属性的值为ture。那么编组后的xml,castor会自动给没有在mapping配置文件进行配置的属性自动编组(转换)到xml中。如果为false,那么在mapping配置文件中出现的属性将在编组后不现在在编组后的xml中。
map-to就是当前class编组后的xml文档的节点元素名称。
field就是描述JavaObject中的属性,name是Java对象的属性名称,type是类型。关于配置的type类型也有规定,你可以参考:http://www.castor.org/xml-mapping.html的field配置讲解。
而field还有其他的属性配置,如get-method应该是getter方法、set-method应该是setter的方法、has-mehtod 应该是hashCode方法,有时候我们不一定要提高getter、setter方法,我们需要用自己的方法名称来代替setter、getter。如果当前field配置的是集合类型,那么你需要给field元素配置collection属性。
bind-xml就是绑定(编组)成xml后的xml内容的描述,name就是编组后xml的节点元素名称,node有2个值,分别是 attribute、element。attribute是属性,它会在节点元素的属性中显示,例如:<account id=”2”></account>
而element则是单独的一个元素,例如:<account><id>2</id></account>
就这个样子的。
mapping.xml还可以有其他标签,如:
<include href="other_mapping_file.xml"/>
导入外部xml文件,可以分多个配置。
posted @
2012-08-21 16:01 小熊宝贝的每一天 阅读(301) |
评论 (0) |
编辑 收藏
AnyURI 数据类型(AnyURI Data Type)
anyURI 数据类型用于规定 URI。
下面是一个关于某个 scheme 中 anyURI 声明的例子:
<xs:attribute name="src" type="xs:anyURI"/>
文档中的元素看上去应该类似这样:
<pic src="http://www.w3school.com.cn/images/smiley.gif" />
XML Schema 是基于 XML 的 DTD 替代者。
XML Schema 描述 XML 文档的结构。
XML Schema 语言也称作 XML Schema 定义(XML Schema Definition,XSD)。
在此教程中,你将学习如何在应用程序中读取和创建 XML Schema 语言,XML Schema 为何比 DTD 更加强大,以及如何在您的应用程序中使用 XML Schema。
XML中的Schema元素详解:
http://www.w3school.com.cn/schema/schema_schema.asp
posted @
2012-08-15 13:07 小熊宝贝的每一天 阅读(187) |
评论 (0) |
编辑 收藏
XML Schema:
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.w3school.com.cn"
xmlns="http://www.w3school.com.cn"
elementFormDefault="qualified">
<xs:element name="note">
<xs:complexType>
<xs:sequence>
<xs:element name="to" type="xs:string"/>
<xs:element name="from" type="xs:string"/>
<xs:element name="heading" type="xs:string"/>
<xs:element name="body" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
定义简易元素
定义简易元素的语法:
<xs:element name="xxx" type="yyy"/>
xs:stringxs:decimalxs:integerxs:booleanxs:datexs:time
定义属性
<xs:attribute name="lang" type="xs:string" fixed="EN"/>
限定(restriction)用于为 XML 元素或者属性定义可接受的值。对 XML 元素的限定被称为 facet。
使用 extension 或 restriction 元素来扩展或限制元素的基本简易类型。
posted @
2012-08-14 17:49 小熊宝贝的每一天 阅读(201) |
评论 (0) |
编辑 收藏
WSDL是Web Service的描述语言,是一种接口定义语言,用于描述Web Service的接口信息等。WSDL元素
[1]基于XML语法描述了与服务进行交互的基本
元素:
Type(消息类型):数据类型定义的容器,它使用某种类型系统(如XSD)。
Message(消息):通信数据的抽象类型化定义,它由一个或者多个part组成。
Part:消息参数
Operation(操作):对服务所支持的操作进行抽象描述,WSDL定义了四种操作:
1.单向(one-way):端点接受信息;2.请求-响应(request-response):端点接受消息,然后发送相关消息;3.要求-响应(solicit-response):端点发送消息,然后接受相关消息;4.通知(notification
):端点发送消息。
Port Type (端口类型):特定端口类型的具体协议和数据格式规范。
Binding:特定端口类型的具体协议和
数据格式规范
Port :定义为绑定和网络地址组合的单个端点。
Service:相关端口的集合,包括其关联的接口、操作、消息等。
posted @
2012-08-14 14:57 小熊宝贝的每一天 阅读(181) |
评论 (0) |
编辑 收藏