
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 小熊寶貝的每一天 閱讀(186) |
評論 (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 小熊寶貝的每一天 閱讀(183) |
評論 (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 小熊寶貝的每一天 閱讀(311) |
評論 (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 小熊寶貝的每一天 閱讀(196) |
評論 (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 小熊寶貝的每一天 閱讀(206) |
評論 (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 小熊寶貝的每一天 閱讀(189) |
評論 (0) |
編輯 收藏