| Interstage Application Server/Interstage Web Server J2EE ユーザーズガイド |
目次
索引
![]()
|
| 第4部 Webサービス編 | > 第18章 Webサービスの開発 | > 18.3 Javaのデータ型とXMLのデータ型との対応 |
構造体型とBean型について、説明します。
構造体型は、任意の数のデータ(メンバと呼びます)をpublicインスタンスフィールドとして持つデータ型です。メンバは、サポートされているデータ型であれば自由に定義できます。
構造体型と、それに対応してXMLで使用される型を以下に示します。
|
Webサービスアプリケーションのパラメタに使用するJavaのデータ型 |
XMLで使用されるデータ型 |
|---|---|
|
構造体型として定義した任意のクラス |
構造体 |
構造体型は、次の条件を満たすpublicクラスとして定義します。

【構造体型として定義したクラスの例】
package com.example; // パッケージ名
public class Person {
public String name; // 各メンバをpublicインスタンスフィールドとして宣言する
public int age; // 同上
public Person (){ // public デフォルト(引数なし)コンストラクタ
name="nobody";
age=0;
}
public Person (String myname, int myage){ // publicコンストラクタ(省略可)
name = myname;
age = myage;
}
} |
上記のJavaに対応する、XMLの構造体のWSDL定義例を以下に示します。
<xsd:complexType name="Person">
<xsd:sequence>
<xsd:element name="name" type="xsd:string"/>
<xsd:element name="age" type="xsd:int"/>
</xsd:sequence>
</xsd:complexType> |

Bean型は、任意の数のデータ(メンバと呼びます)をプロパティとして持つ、構造体に類似したデータ型です。メンバは、サポートされているデータ型であれば自由に定義できます。
Bean型では、set/getメソッドを提供することでメンバを定義します。
Bean型と、それに対応してXMLで使用される型を以下に示します。
|
Webサービスアプリケーションのパラメタに使用するJavaのデータ型 |
XMLで使用されるデータ型 |
|---|---|
|
Bean型として定義した任意のクラス |
構造体 |
Bean型は、次の条件を満たすpublicクラスとして定義します。

【Bean型の定義例】
package com.example; // パッケージ名
public class PersonBean {
// 各メンバをプロパティ(set/getメソッドのペア)として宣言する
private String _name;//privateのため、メンバとして直接参照されない
public void setName(String name) { _name = name; }
public String getName() { return _name; }
// 同上
private int _age; //privateのため、メンバとして直接参照されない
public void setAge(int age) { _age = age; }
public int getAge() { return _age; }
public PersonBean() { // public デフォルト(引数なし)コンストラクタ
_name="nobody";
_age = 0;
}
public PersonBean(String name, int age){ // publicコンストラクタ(省略可)
_name=name;
_age=age;
}
} |
上記のJavaに対応する、XMLの構造体のWSDL定義例を以下に示します。
<xsd:complexType name="Person">
<xsd:sequence>
<xsd:element name="name" type="xsd:string"/>
<xsd:element name="age" type="xsd:int"/>
</xsd:sequence>
</xsd:complexType> |

以下のXMLのデータ型は、Javaベースの開発では使用されませんが、WSDLおよびSOAP通信で利用は可能です。
目次
索引
![]()
|