Interstage Application Server/Interstage Web Server J2EE ユーザーズガイド
目次 索引 前ページ次ページ

第4部 Webサービス編> 第18章 Webサービスの開発> 18.3 Javaのデータ型とXMLのデータ型との対応

18.3.1 単純型

 Webサービスアプリケーションのパラメタ(引数、返り値)で使用できるデータ型と、それに対応してXMLで使用される型を以下に示します。

■プリミティブ型

Webサービスアプリケーションのパラメタに使用するJavaのデータ型

XMLで使用されるデータ型

int

xsd:int

short

xsd:short

long

xsd:long

byte

xsd:byte

float

xsd:float

double

xsd:double

boolean

xsd:boolean

■参照型

 単純型の参照型は、一部のJavaのデータ型について、XMLで使用されるデータ型が選択したスタイル方式によって異なります。

Webサービスアプリケーションのパラメタに使用するJavaのデータ型

XMLで使用されるデータ型

デフォルト(literal利用の場合)

encoded利用の場合

java.lang.Integer

xsd:int

soapenc:int

java.lang.Short

xsd:short

soapenc:short

java.lang.Long

xsd:long

soapenc:long

java.lang.Byte

xsd:byte

soapenc:byte

java.lang.Float

xsd:float

soapenc:float

java.lang.Double

xsd:double

soapenc:double

java.lang.Boolean

xsd:boolean

soapenc:boolean

java.lang.String

xsd:string

soapenc:string

java.math.BigDecimal

xsd:decimal

soapenc:decimal

java.math.BigInteger

xsd:integer

soapenc:integer

java.util.Calendar

xsd:dateTime

xsd:dateTime

javax.xml.namespace.QName

xsd:QName

xsd:QName

java.net.URI

xsd:anyURI

xsd:anyURI

byte[]

xsd:base64Binary

soapenc:base64

■そのほかのXMLの単純型

 以下のXMLのデータ型は、Javaベースの開発では使用されませんが、WSDLおよびSOAP通信では利用できます。利用した場合、データの対応は以下の表のとおりです。

 これらのデータ型を使用する場合、SOAP通信でXML上の値がXMLのデータ型に適合することを、アプリケーションで保証する必要があります。

XMLで使用するデータ型

対応するJavaのデータ型

xsd:nonPositiveInteger

java.math.BigInteger

xsd:negativeInteger

java.math.BigInteger

xsd:nonNegativeInteger

java.math.BigInteger

xsd:unsignedLong

java.math.BigInteger

xsd:unsignedInt

long

xsd:unsignedShort

int

xsd:unsignedByte

short

xsd:positiveInteger

java.math.BigInteger

xsd:normalizedString

java.lang.String

xsd:duration

java.lang.String

xsd:time

java.util.Calendar

xsd:date

java.util.Calendar

xsd:gYearMonth

java.lang.String

xsd:gYear

java.lang.String

xsd:gMonthDay

java.lang.String

xsd:gDay

java.lang.String

xsd:gMonth

java.lang.String

xsd:token

java.lang.String

xsd:language

java.lang.String

xsd:NMTOKEN

java.lang.String

xsd:Name

java.lang.String

xsd:NCName

java.lang.String

xsd:ID

java.lang.String

xsd:hexBinary

byte[]

■nillableについて

 literalのWSDLのスキーマ定義でnillable属性が付いていない、またはnillable属性値が偽(false/0)のelementは、実際の通信でnil(Javaのnullに相当)になることはない要素、という意味の定義になります。
 このようなelementに対応するJavaの変数は、値をnullで送信しないでください。

 また、Javaで値がnullにならないデータ型(プリミティブ型)に対して、値がnillの要素を受信した場合、該当の変数は、Java言語規定で定義された初期値が設定される場合があります。


目次 索引 前ページ次ページ

Copyright 2008 FUJITSU LIMITED