![]() ![]() ![]() ![]() |
以下の節では、JAXB データ バインディングの使用について説明します。
さまざまなシステム間でのデータ交換には XML が標準的に使用されているため、Web サービス アプリケーションには、Java アプリケーションから直接 XML 形式データへアクセスする手段が必要となります。具体的には、XML コンテンツを Java アプリケーションで読み取れる形式に変換する必要があります。「データ バインディング」では、XML 表現と Java 表現間のデータ変換を記述します。
JAX-WS では Java Architecture for XML Binding (JAXB) を使用してあらゆるデータ バインディング タスクを管理します。具体的には、JAXB により Java メソッド シグネチャと WSDL のメッセージおよびオペレーションがバインドされるため、実行時の変換が自動的に処理される一方で、そのマッピングをカスタマイズすることができます。これにより、XML に関する知識がそれほどなくても、XML データと処理関数を、Java テクノロジに基づくアプリケーションに簡単に組み込むことができます。
次の図に、JAXB のデータ バインディング プロセスを示します。
この図に示すように、JAXB のデータ バインディング プロセスは、以下のタスクから構成されます。
get
および set
メソッドを使用します。アンマーシャリングは、JAXB の「バインディング フレームワーク」によって管理されます。wsdl:types
セクション内のスキーマ コンポーネントが特定されます。マーシャリングは、JAXB のバインディング フレームワークによって管理されます。
JAXB バインディング言語を使用すると、カスタム バインディング宣言を定義したり、JAXB アノテーションを指定して XML と Java 間のデータ変換を制御することができます。
WebLogic Server で JAXB データ バインディング アーティファクトを開発する手順は、Java クラス ファイルと WSDL のどちらから開始するかによって異なります。
Java-to-XML マッピングを制御するには、JWS ファイル内に JAXB アノテーションを含めます。「JAXB アノテーションを使用した Java-to-XML スキーマ マッピングのカスタマイズ」を参照してください。カスタマイズが必要ない場合、JAXB は標準の組み込みデータ型およびユーザ定義データ型のマッピングを使用します。「組み込みデータ型の Java-to-XML マッピング」および「サポートされるユーザ定義の Java データ型」を参照してください。
このプログラミング モデルの詳細については、「Java から開始する WebLogic Web サービスの開発 : 主な手順」を参照してください。
XML-to-Java マッピングを制御するには、WSDL または XML スキーマ内、あるいは外部ファイル内にカスタム バインディング宣言を定義します。「バインディング宣言を使用した XML Schema-to-Java マッピングのカスタマイズ」を参照してください。カスタマイズが必要ない場合、標準の組み込みデータ型およびユーザ定義データ型のマッピングを使用します。「組み込みデータ型の XML-to-Java マッピング」および「サポートされるユーザ定義の XML データ型」を参照してください。
このプログラミング モデルの詳細については、「WSDL ファイルから開始する WebLogic Web サービスの開発 : 主な手順」を参照してください。
こららの手順で説明している jwsc
、wsdlc
、または clientgen
Ant タスクを呼び出す場合、以下の点に注意する必要があります。
type="JAXWS"
属性を指定する必要がある。jwsc
では、<jws>
子要素の一部として type 属性を指定します。<binding>
子要素を指定し、JAX-WS および JAXB のデータ バインディングのカスタマイズ情報を格納するカスタマイズ ファイルを指定することができる。カスタマイズ ファイルの作成については、「バインディング宣言を使用した XML Schema-to-Java マッピングのカスタマイズ」を参照してください。カスタマイズが必要ない場合、JAXB は標準の組み込みデータ型およびユーザ定義データ型のマッピングを使用します。「標準データ型のマッピング」を参照してください。
jwsc
、wsdlc
、または clientgen
Ant タスクの詳細については、『WebLogic Web サービス リファレンス』の「Ant タスク リファレンス」を参照してください。
WebLogic Web サービスでは、JAXB 2.0 (JSR 222) 仕様の規定に従って組み込みの XML スキーマ、Java、および SOAP のデータ型がサポートされており、追加のプログラミング手順を踏まずに、そうしたデータ型を Web サービスのオペレーションで使用できます。組み込みデータ型には、integer
、string
、time
などがあります。
また、Web サービスの入力パラメータや戻り値として、さまざまなユーザ定義の XML および Java データ型を使用できます。ユーザ定義のデータ型には、XML スキーマや Java の構成要素から作成する <xsd:complexType>
や JavaBean などがあります。jwsc
や clientgen
などの WebLogic Web サービス Ant タスクでは、ユーザ定義のデータ型を XML 表現と Java 表現の間で変換するのに必要なデータ バインディング アーティファクトが自動的に生成されます。XML 表現は SOAP リクエストや応答メッセージで使用し、Java 表現は Web サービスを実装する JWS で使用します。
以下の節では、JAXB でサポートされている組み込みデータ型およびユーザ定義データ型について説明します。
次の節では、WebLogic Web サービスがサポートする組み込みデータ型およびその XML 表現と Java 表現間のマッピングについて説明します。Web サービスを実装するバックエンド コンポーネントのパラメータと戻り値のデータ型が、組み込みデータ型のセットの中にある限り、データは WebLogic Server によって、XML と Java 間で自動的に変換されます。
ユーザ定義のデータ型を使用する場合は、XML と Java 間でデータを変換するデータ バインディング アーティファクトを作成する必要があります。WebLogic Server には、ほとんどのユーザ定義データ型のデータ バインディング アーティファクトを自動的に生成可能な jwsc
および wsdlc
Ant タスクが用意されています。サポートされる XML データ型と Java データ型については、「サポートされるユーザ定義のデータ型」を参照してください。
次の表に、サポートされる XML スキーマ データ型 (ターゲット ネームスペース http://www.w3.org/2001/XMLSchema
) と、それぞれに対応する Java データ型をアルファベット順に示します。サポートされるユーザ定義の XML データ型については、「組み込みデータ型の Java-to-XML マッピング」を参照してください。
次の例は JAXB 仕様からの抜粋ですが、デフォルトの XML-to-Java バインディングの例を示しています。
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:element name="purchaseOrder" type="PurchaseOrderType"/>
<xsd:element name="comment" type="xsd:string"/>
<xsd:complexType name="PurchaseOrderType">
<xsd:sequence>
<xsd:element name="shipTo" type="USAddress"/>
<xsd:element name="billTo" type="USAddress"/>
<xsd:element ref="comment" minOccurs="0"/>
<xsd:element name="items" type="Items"/>
</xsd:sequence>
<xsd:attribute name="orderDate" type="xsd:date"/>
</xsd:complexType>
<xsd:complexType name="USAddress">
<xsd:sequence>
<xsd:element name="name" type="xsd:string"/>
<xsd:element name="street" type="xsd:string"/>
<xsd:element name="city" type="xsd:string"/>
<xsd:element name="state" type="xsd:string"/>
<xsd:element name="zip" type="xsd:decimal"/>
</xsd:sequence>
<xsd:attribute name="country" type="xsd:NMTOKEN" fixed="US"/>
</xsd:complexType>
<xsd:complexType name="Items">
<xsd:sequence>
<xsd:element name="item" minOccurs="1" maxOccurs="unbounded">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="productName" type="xsd:string"/>
<xsd:element name="quantity">
<xsd:simpleType>
<xsd:restriction base="xsd:positiveInteger">
<xsd:maxExclusive value="100"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="USPrice" type="xsd:decimal"/>
<xsd:element ref="comment" minOccurs="0"/>
<xsd:element name="shipDate" type="xsd:date"
minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="partNum" type="SKU" use="required"/>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<!-- 最小在庫管理単位、製品を識別するためのコード -->
<xsd:simpleType name="SKU">
<xsd:restriction base="xsd:string">
<xsd:pattern value="\d{3}-[A-Z]{2}"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:schema>
import javax.xml.datatype.XMLGregorianCalendar; import java.util.List;
public class PurchaseOrderType {
USAddress getShipTo(){...}
void setShipTo(USAddress){...}
USAddress getBillTo(){...}
void setBillTo(USAddress){...}
/** Comment プロパティの設定 (省略可能)*/
String getComment(){...}
void setComment(String){...}
Items getItems(){...}
void setItems(Items){...}
XMLGregorianCalendar getOrderDate()
void setOrderDate(XMLGregorianCalendar)
};
public class USAddress {
String getName(){...}
void setName(String){...}
String getStreet(){...}
void setStreet(String){...}
String getCity(){...}
void setCity(String){...}
String getState(){...}
void setState(String){...}
int getZip(){...}
void setZip(int){...}
static final String COUNTRY="USA";
};
public class Items {
public class ItemType {
String getProductName(){...}
void setProductName(String){...}
/** Quantity セッター値 0..99 の型制約 */
int getQuantity(){...}
void setQuantity(int){...}
float getUSPrice(){...}
void setUSPrice(float){...}
/** Comment プロパティの設定 (省略可能)*/
String getComment(){...}
void setComment(String){...}
XMLGregorianCalendar getShipDate();
void setShipDate(XMLGregorianCalendar);
/** PartNum セッター値 "\d{3}-[A-Z]{2}" の型制約 */
String getPartNum(){...} void setPartNum(String){...}
};
/** Items.ItemType のローカルの構造的制約の 1 つまたは複数のインスタンス */
List<Items.ItemType> getItem(){...}
}
public class ObjectFactory {
// 型ファクトリ
Object newInstance(Class javaInterface){...}
PurchaseOrderType createPurchaseOrderType(){...}
USAddress createUSAddress(){...}
Items createItems(){...}
Items.ItemType createItemsItemType(){...}
// 要素ファクトリ
JAXBElement<PurchaseOrderType>createPurchaseOrder(PurchaseOrderType){...}
JAXBElement<String> createComment(String value){...}
}
次の表に、サポートされている Java データ型と、それぞれに対応する XML スキーマ データ型をアルファベット順に示します。サポートされるユーザ定義の Java データ型については、「サポートされるユーザ定義の Java データ型」を参照してください。
以降の節の表には、jwsc
および wsdlc
Ant タスクでデータ バインディング アーティファクトを自動的に生成できるユーザ定義の XML データ型および Java データ型 (対応する Java 表現または XML 表現など) をまとめます。
これらの表にない XML データ型または Java データ型で、「サポートされる組み込みデータ型」の表に示した組み込みデータ型でもない型の場合は、ユーザ定義データ型のアーティファクトを手動で作成する必要があります。
次の表に、jwsc
および wsdlc
Ant タスクでサポートされる XML スキーマ データ型と、それぞれに対応する Java データ型またはマッピング メカニズムをまとめます。
次の表に、jwsc
および wsdlc
Ant タスクでサポートされるユーザ定義の Java データ型と、それぞれに対応する XML スキーマ データ型をまとめます。
必要に応じて、JAXB アノテーションを使用して Java-to-XML スキーマ マッピングのデフォルト バインディング規則をオーバーライドすることができます。表 5-5 に、Java オブジェクトを XML にマッピングする方法を制御するために JWS ファイルに含めることができる JAXB マッピング アノテーションを示します。これらの各アノテーションは、javax.xml.bind.annotation
パッケージで利用できます。
以下の節に、サポートされている組み込みデータ型およびユーザ定義データ型の XML スキーマに対する Java オブジェクトのデフォルト マッピングを示します。
@XmlRootElement(name = "ComplexService", namespace ="http://examples.org")
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "basicStruct", propOrder = {
"intValue",
"stringArray",
"stringValue"
)
public class BasicStruct {
protected int intValue;
@XmlElement(nillable = true)
protected List<String> stringArray;
protected String stringValue;
public int getIntValue() {
return intValue;
}
public void setIntValue(int value) {
this.intValue = value;
}
public List<String> getStringArray() {
if (stringArray == null) {
stringArray = new ArrayList<String>();
}
return this.stringArray;
}
public String getStringValue() {
return stringValue;
}
public void setStringValue(String value) {
this.stringValue = value;
}
}
@XmlAccessorType
アノテーションは、フィールドやプロパティをデフォルトでマッピングするかどうかを指定します。このアノテーションは、以下の Java プログラム要素に対して指定できます。
@XmlAccessorType
は、@XmlType
および @XmlRootElement
アノテーションとともに指定できます。
次の表に、@XmlAccessorType
アノテーションに渡すことができる省略可能な要素を示します。
詳細については、Javadoc の「javax.xml.bind.annotation.XmlAccessorType
」を参照してください。例については、「JAXB アノテーションの例」を参照してください。
@XmlElement
アノテーションは、クラスに格納されているプロパティを、格納しているクラスがマップされている XML スキーマの複合型のローカル要素へマップします。このアノテーションは、以下の Java プログラム要素に対して指定できます。
次の表に、@XmlElement
アノテーションに渡すことができるアノテーション要素を示します。
詳細については、Javadoc の「javax.xml.bind.annotation.XmlElement
」を参照してください。
@XmlMimeType
アノテーションは、プロパティの XML 表現を制御する MIME タイプを指定します。このアノテーションは、XML の xsd:base64Binary
バイナリにバインドされる Image
や Source
などのデータ型に対して指定できます。
次の表に、@XmlMimeType
アノテーションに渡すことができる必須の要素を示します。
詳細については、Javadoc の「javax.xml.bind.annotation.XmlMimeType
」を参照してください。
@XmlRootElement
アノテーションは、Web サービスの WSDL によって使用される XML スキーマのグローバル要素に最上位クラスをマップします。このアノテーションは、以下の Java プログラム要素に対して指定できます。
@XmlRootElement
は、@XmlType
および @XmlAccessorType
アノテーションとともに指定できます。
次の表に、@XmlRootElement
アノテーションに渡すことができる省略可能な要素を示します。
詳細については、Javadoc の「javax.xml.bind.annotation.XmlRootElement
」を参照してください。例については、「JAXB アノテーションの例」を参照してください。
@XmlSeeAlso
アノテーションは、現在のクラスをバインドする際にクラスのリストをバインドします。次の表に、@XMLRootElement
アノテーションに渡すことができる省略可能な要素を示します。
@XmlType
アノテーションは、クラスまたは列挙型を XML スキーマ型にマップします。型は単純型または複合型の場合があります。このアノテーションは、以下の Java プログラム要素に対して指定できます。
@XmlType
は、@XmlRootElement
および @XmlAccessorType
アノテーションとともに指定できます。
次の表に、@XmlType
アノテーションに渡すことができる省略可能な要素を示します。
詳細については、Javadoc の「javax.xml.bind.annotation.XmlType
」を参照してください。例については、「JAXB アノテーションの例」を参照してください。
WSDL ファイルの分散的特性から、現在のアプリケーションの要件を満たすためにその中身を常に制御または変更できるとは限りません。たとえば、WSDL ファイルを所有していなかったり、パートナがすでに使用している場合は、変更を加えるのは非現実的または不可能です。
WSDL ファイルを直接編集できない場合、カスタム バインディング宣言を指定することによって、WSDL コンポーネントが Java オブジェクトへマップされる方法をカスタマイズすることができます。バインディング宣言を使用すると、非同期性、ラッパー形式など、特定の機能を制御したり、XML スキーマのカスタマイズにより生成される JAXB データ バインディング アーティファクトを制御することもできます。
バインディング宣言は以下のいずれかの方法で定義することができます。
注意 : | カスタマイズが必要な場合、WSDL または XML スキーマ ドキュメントからカスタマイズを分離し、この方法で柔軟性を保つことをお勧めします。 |
選択する方法に関係なく、どのバインディング宣言も意味的には同じです。
カスタム バインディング宣言は、次の図に示すようにスコープに関連付けられます。
|
|||
|
|||
|
|||
カスタム バインディング宣言のスコープは、以下の継承およびオーバーライド規則に準拠します。
以下の節では、カスタム バインディング宣言の作成方法と、標準のカスタム バインディング宣言について説明します。
カスタム バインディング宣言の使用に関する詳細については、以下を参照してください。
特定の WSDL または XML スキーマ ドキュメントのすべてのバインディング宣言を格納する外部のバインディング宣言ファイルを作成します。次に、バインディング宣言ファイルを wsdlc
、jwsc
、または clientgen
Ant タスクの <binding>
子要素に渡します。
以下の節では、JAX-WS バインディング宣言ファイルのルート要素および子要素の指定方法について説明します。定義可能なカスタム バインディング宣言については、「JAX-WS カスタム バインディング宣言」を参照してください。
jaxws:bindings
宣言は、その他すべてのバインディング宣言のルートであり、WSDL ファイルの場所および XML スキーマが従うネームスペース http://java.sun.com/xml/ns/jaxws
を定義します。
<jaxws:bindings
wsdlLocation="uri_of_wsdl
"
jaxws:xmlns="http://java.sun.com/xml/ns/jaxws">
uri_of_wsdl
に WSDL ファイルの URI を指定します。
表 5-13 で定義しているパッケージ、ラッパー形式、および非同期性マッピングのカスタマイズは、外部カスタマイズ ファイルにおけるルート バインディング宣言の一部として「グローバル」に定義できます。グローバル バインディングは、wsdlLocation
属性によって参照される WSDL 内の wsdl:definition
のスコープ全体に適用されます。
次に、パッケージ名、ラッパー形式、非同期マッピングのカスタマイズを定義するルート バインディング要素の例を示します。
<jaxws:bindings
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
wsdlLocation="http://localhost:7001/simple/SimpleService?WSDL"
xmlns:jaxws="http://java.sun.com/xml/ns/jaxws">
<package name="example.webservices.simple.simpleservice">
<enableWrapperStyle>true</enableWrapperStyle>
<enableAsyncMapping>false</enableAsyncMapping>
</jaxws:bindings>
ルートの jaxws:bindings
要素には、子要素を含めることができます。カスタマイズしている WSDL ノードは、node 属性で XPath 式を渡すことによって指定します。
コンパイルされた WSDL ファイル内に埋め込まれた XML スキーマは、標準の JAXB バインディングを使用してカスタマイズすることができます。詳細については、「JAX-WS WSDL Customization」の「XML Schema Customization」を参照してください。定義可能なカスタム JAXB バインディング宣言については、「JAXB カスタム バインディング宣言」を参照してください。
たとえば、次の例では、WSDL ドキュメントの wsdl:definitions
ノードのパッケージ名を examples.webservices.simple.simpleservice
として定義しています。
<jaxws:bindings
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
wsdlLocation="http://localhost:7001/simple/SimpleService?WSDL
xmlns:jaxws="http://java.sun.com/xml/ns/jaxws">
<jaxws:bindings node="wsdl:definitions"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
<jaxws:package name="examples.webservices.simple.simpleservice"/>
</bindings>
JAXB バインディング宣言ファイルは、ネームスペース http://java.sun.com/xml/ns/jaxb
の XML スキーマに従う XML ドキュメントです。以下の節では、JAXB バインディング宣言ファイルのルート要素および子要素の指定方法について説明します。定義可能なカスタム バインディング宣言については、「JAXB カスタム バインディング宣言」を参照してください。
jaxb:bindings
宣言は、その他すべてのバインディング宣言のルートです。ルート宣言は次の形式で指定します。
<jaxb:bindings
schemaLocation="uri_of_schema
">
uri_of_schema
に XML スキーマ ファイルの URI を指定します。
ルートの jaxb:bindings
要素には、子要素を含めることができます。カスタマイズしているスキーマ ノードは、node 属性で XPath 式を渡すことによって指定します。
たとえば、次の例では、パッケージ名を examples.webservices.simple.simpleservice
として定義しています。
<jaxb:bindings
schemaLocation="simpleservice.xsd">
<jaxb:bindings node="//xs:simpleType[@name='value1']">
<jaxb:package name="examples.webservices.simple.simpleservice"/>
</jaxb:bindings>
</jaxb:bindings>
バインディング宣言は、以下のいずれかの方法で WSDL ファイルに埋め込むことができます。
jaxws:bindings
要素を使用し、JAX-WS または JAXB バインディング宣言を WSDL ファイルに埋め込む。「WSDL ファイルへの JAX-WS または JAXB バインディング宣言の埋め込み」を参照してください。<appinfo>
要素の一部として、JAXB バインディング宣言を XML スキーマに埋め込む。「XML スキーマへの JAXB バインディング宣言の埋め込み」を参照してください。
バインディング宣言は、WSDL 拡張として jaxws:bindings
要素を使用して WSDL ファイルに埋め込むことができます。定義可能なカスタム バインディング宣言については、「JAX-WS カスタム バインディング宣言」を参照してください。
たとえば、次の例では、SimpleServiceImpl
サービス エンドポイント インタフェース (またはポート) のクラス名を SimpleService
として定義しています。
<wsdl:portType name="SimpleServiceImpl">
<jaxws:bindings xmlns:jaxws="http://java.sun.com/xml/ns/jaxws">
<jaxws:class name="SimpleService"/>
</jaxws:bindings>
</wsdl:portType>
このバインディング宣言を指定しなかった場合、サービス エンドポイント インタフェースのデフォルト クラス名は、wsdl:portType
名、すなわち SimpleServiceImpl
に設定されます。
コンパイルされた WSDL ファイル内に埋め込まれた XML スキーマは、標準の JAXB バインディングを使用してカスタマイズすることができます。詳細については、「JAX-WS WSDL Customization」の「XML Schema Customizations」を参照してください。定義可能なカスタム JAXB バインディング宣言については、「JAXB カスタム バインディング宣言」を参照してください。
JAXB カスタム宣言は、次に示すように XML スキーマの <appinfo>
要素内に埋め込むことができます。
<xs:annotation>
<xs:appinfo>
<binding declaration
>
</xs:appinfo>
</xs:annotation>
たとえば、次の例では、スキーマのパッケージ名を定義しています。
<schema xmlns="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.w3.org/2001/XMLSchema"
xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
jaxb:version="2.0">
<annotation>
<appinfo>
<jaxb:schemaBindings>
<jaxb:package name="example.webservices.simple.simpleservice"/>
</jaxb:schemaBindings>
</appinfo>
</annotation>
</schema>
次の表に、一般的な JAX-WS のカスタマイズをまとめます。JAX-WS カスタム バインディング宣言の完全なリストについては、「JAX-WS WSDL Customization」を参照してください。
wsdlc Ant タスクが、WSDL の targetNamespace に基づいてパッケージ名を生成する。このデータ バインディングのカスタマイズは、wsdlc 、jwsc 、または clientgen Ant タスクの packageName 属性によってオーバーライドされる。詳細については、『WebLogic Web サービス リファレンス』の「Ant タスク リファレンス」を参照。
wsdl:definitions ノード上で指定することができる。
<bindings |
|
<bindings |
|
clientgen Ant タスクに、通常の同期メソッドとともに非同期のポーリング オペレーションおよびコールバック オペレーションを生成させるには、jaxws:enableAsycMapping バインディング宣言を使用する。
<bindings |
|
<bindings node="wsdl:definitions/wsdl:service[@name='SimpleService']"> |
|
Service クラスのポート アクセサ メソッドまたはサービス エンドポイント インタフェースの生成された Java メソッドの名前をカスタマイズするには、jaxws:method バインディング宣言を使用する。
<bindings node="wsdl:definitions/wsdl:portType[@name='SimpleServiceImpl']/wsdl:operation[@name='EchoHello']"> |
|
jaxws:parameter バインディング宣言を使用する。この宣言を使用すると、wsdl:portType の wsdl:operation のメソッド パラメータを変更できる。
<bindings node="wsdl:definitions/wsdl:portType[@name='SimpleServiceImpl']/wsdl:operation[@name='EchoHello']"> |
|
<bindings node="wsdl:definitions/wsdl:portType[@name='SimpleServiceImpl']/wsdl:operation[@name='EchoHello']"> |
|
javaee:handlerchain バインディング宣言を使用する。インライン ハンドラは、Web Services Metadata for the Java Platform 仕様 (JSR-181) で定義されているハンドラ チェーン コンフィグレーションに従う必要がある。
|
注意 : | 次の表には、開始時に役立つ JAXB カスタム バインディング宣言のみをまとめています。すべての JAXB カスタム バインディング宣言の完全なリストと説明については、JAXB 仕様、または、Sun 社の『The Java Web Services Tutorial』の「Customizing JAXB Bindings」を参照してください。 |
|
|
|
|
wsdlc Ant タスクが、WSDL の targetNamespace に基づいてパッケージ名を生成する。このデータ バインディングのカスタマイズは、wsdlc 、jwsc 、または clientgen Ant タスクの packageName 属性によってオーバーライドされる。詳細については、『WebLogic Web サービス リファレンス』の「Ant タスク リファレンス」を参照。
<jaxb:bindings <jaxb:bindindgs |
|
|
|
<jaxb:bindindgs |
|
<javaType> バインディング宣言を使用する。
|
|
|
![]() ![]() ![]() |