16.2.10 javax.xml.bind.annotation.XmlElementアノテーション
javax.xml.bind.annotation.XmlElementアノテーションは,SEIのサービスメソッドの引数や戻り値に指定します。指定すると,生成されるリクエストbean,またはレスポンスbeanのプロパティのjavax.xml.bind.annotation.XmlElementアノテーションにマッピングされます。
javax.xml.bind.annotation.XmlElementアノテーションは,wrapperスタイルで指定します。non-wrapperスタイルで指定した場合の動作の保証はされません。
javax.xml.bind.annotation.XmlElementアノテーションを使用したマッピングの例を次の図に示します。
- 〈この項の構成〉
(1) name要素(javax.xml.bind.annotation.XmlElement)
name要素は,生成されるリクエストbeanまたはレスポンスbeanのプロパティをアノテートするjavax.xml.bind.annotation.XmlElementアノテーションのname要素にマッピングされます。
javax.xml.bind.annotation.XmlElementアノテーションが,javax.jws.WebParamアノテーションまたはjavax.jws.WebResultアノテーションと同時に存在する場合の注意事項を次に示します。
-
javax.jws.WebParamアノテーションと同時に存在する場合
javax.xml.bind.annotation.XmlElementアノテーションとjavax.jws.WebParamアノテーションのname要素を同じ値にする必要があります。ただし,name要素に"##default"を指定したとき,またはjavax.jws.WebParamアノテーションのname要素に空文字("")を指定したとき,同一かどうかの比較処理は行われません。
-
javax.jws.WebResultアノテーションと同時に存在する場合
javax.xml.bind.annotation.XmlElementアノテーションとjavax.jws. WebResultアノテーションのname要素を同じ値にする必要があります。ただし,name要素に"##default"を指定したとき,またはjavax.jws.WebResultアノテーションのname要素に空文字("")を指定したとき,同一かどうかの比較処理は行われません。
(2) namespace要素(javax.xml.bind.annotation.XmlElement)
namespace要素は,生成されるリクエストbeanまたはレスポンスbeanのプロパティをアノテートするjavax.xml.bind.annotation.XmlElementアノテーションのnamespace要素にマッピングされます。
javax.xml.bind.annotation.XmlElementアノテーションが,javax.jws.WebParamアノテーションまたはjavax.jws.WebResultアノテーションと同時に存在する場合の注意事項を次に示します。
-
javax.jws.WebParamアノテーションと同時に存在する場合
この要素とjavax.jws.WebParamアノテーションのtargetNamespace要素を同じ値にする必要があります。ただし,namespace要素に"##default"を指定したとき,またはjavax.jws.WebParamアノテーションのtargetNamespace要素に空文字("")を指定したとき,同一かどうかの比較処理は行われません。
-
javax.jws.WebResultアノテーションと同時に存在する場合
この要素とjavax.jws. WebResultアノテーションのtargetNamespace要素を同じ値にする必要があります。ただし,namespace要素に"##default"を指定したとき,またはjavax.jws.WebResultアノテーションのtargetNamespace要素に空文字("")を指定したとき,同一かどうかの比較処理は行われません。
(3) nillable要素(javax.xml.bind.annotation.XmlElement)
nillable要素は,生成されるリクエストbeanまたはレスポンスbeanのプロパティをアノテートするjavax.xml.bind.annotation.XmlElementアノテーションのnillable要素にマッピングされます。
nillable要素には,trueまたはfalseの値を指定できます。falseの値を指定した場合,生成されるリクエストbeanまたはレスポンスbeanのプロパティのjavax.xml.bind.annotation.XmlElementアノテーションにnillable要素はマッピングされません。
(4) required要素(javax.xml.bind.annotation.XmlElement)
required要素は,生成されるリクエストbeanまたはレスポンスbeanのプロパティをアノテートするjavax.xml.bind.annotation.XmlElementアノテーションのrequired要素にマッピングされます。
required要素には,trueまたはfalseの値を指定できます。falseの値を指定した場合,生成されるリクエストbeanまたはレスポンスbeanのプロパティのjavax.xml.bind.annotation.XmlElementアノテーションにrequired要素はマッピングされません。