상세 컨텐츠

본문 제목

Web Service DATA TYPE

프로그래밍/웹서비스

by 라제폰 2008. 12. 13. 20:24

본문


xsd 접두어는 XML namespace URI(http://www.w3.org/2001/XMLSchema)를 나타낸다.
SOAP-EN 접두어는 XML namespace URI(http://schmas.xmlsoap.org/soap/encoding)를 나타낸다.
 
XML 데이터 타입
Java 데이터 타입
xsd:string
java.lang.String
xsd:boolean
Boolean, java.lang.Boolean *
xsd:double
double, java.lang.Double *
xsd:float
float, java.lang.Float *
xsd:int
int, java.lang.Integer
xsd:integer
java.math.BigInteger
xsd:long
long, java.lang.Long *
xsd:short
short, java.lang.Short *
xsd:byte
byte, java.lang.Byte
xsd:Decimal
java.math.BigDecimal
xsd:base64Bindary
byte[]
xsd:hexBinary
org.apache.axis.types.HexBinary
xsd:QName
javax.xml.rpc.namespace.QName
xsd:dateTime
java.util.Calendar
xsd:gYearMonth
org.apache.axis.types.YearMonth
xsd:gYear
org.apache.axis.types.Year
xsd:gMonthDay
org.apache.axis.types.MonthDay
xsd:anyURI
org.apache.axis.types.URI
xsd:duration
org.apache.axis.types.Duration
xsd:name
org.apache.axis.types.Name
xsd:NCName
org.apache.axis.types.NCName
xsd:NMTOKEN
org.apache.axis.types.NMToken
xsd:nomalizedString
org.apache.axis.types.NormalizedString
xsd:time
org.apache.axis.types.Time
xsd:token
org.apache.axis.types.Token
xsd:unsignedByte
org.apache.axis.types.UnsignedByte
xsd:unsignedLong
org.apache.axis.types.UnsignedLong
xsd:unsignedInt
org.apache.axis.types.UnsignedInt
xsd:unsignedShort
org.apache.axis.types.UnsignedShort
SOAP-ENC:base64
byte[]
SOAP-ENC:string
java.lang.String
SOAP-ENC:boolean
boolean, java.lang.Boolean *
SOAP-ENC:double
double, java.lang.Double *
SOAP-ENC:float
float, java.lang.Float *
SOAP-ENC:int
int, java.lang.Integer *
SOAP-ENC:long
long, java.lang.Long *
SOAP-ENC:short
short, java.lang.Short *
SOAP-ENC:byte
byte, java.lang.Byte *
SOAP-ENC:interger
java.math.BigInteger
SOAP-ENC:decimal
java.math.BigDecimal
SOAP-ENC:Array
array of built-in data type
SOAP-ENC:Map
java.util.HashMap
SOAP-ENC:Element
org.w3.dom.Element
SOAP-ENC:Vector
java.util.Vector
 
배열
웹서비스는 JAX-RPC 타입에서 정의한 배열들을 지원한다. 예를 들어 int[]String[]다차원 배열인 java.math.BigDecimal[][] 와 같은 것도 지원한다.
 
사용자 정의 타입
웹서비스는 어플리케이션을 위해 작성한 모든 사용자 정의 형을 지원한다. JAX-RPC 스펙에는 이러한 클래스들을 ‘Value Type’이라 부른다. JEUS 웹서비스에서 이것을 지원하기 위해서는 사용자 정의 클래스들은 다음 규칙을 따라야 한다.
 
-         파라미터 없는 public default 생성자를 가져야 한다.
-         , 간접적으로 java.rmi.Remote 를 구현해서는 안 된다.
-         멤버 필드들의 타입은 JEUS 웹서비스가 지원하는 타입이어야 한다.
 
클래스는 public, private, 또는 protected 필드들을 포함할 수 있다. 웹서비스 호출 중 전달되는 값을 위해서 필드는 다음 조건을 충족해야 한다.
-         public 필드는finaltransient이 될 수 없다.
-         public 필드가 아닌 것은 관련된 getter setter 메소드를 가져야 한다.
 
위의 규칙을 따르는JavaBeans 컴포넌트 또한 지원된다. 

 

관련글 더보기