public interface SOAPEnvelope extends SOAPElement
SOAPPart
オブジェクトのSOAPHeaderとSOAPBody部分のコンテナです。デフォルトでは、SOAPMessage
オブジェクトはSOAPEnvelope
オブジェクトを保持するSOAPPart
オブジェクトで作成されます。デフォルトではSOAPEnvelope
オブジェクトは、空のSOAPBody
オブジェクトと空のSOAPHeader
オブジェクトを保有しています。SOAPBody
オブジェクトは必須です。SOAPHeader
オブジェクトはオプションですが、ほとんどの場合に使用されています。SOAPHeader
オブジェクトが不要な場合には、削除できます(後述)。
クライアントは、SOAPEnvelope.getHeader
やSOAPEnvelope.getBody
メソッドを呼び出すことで、SOAPHeader
やSOAPBody
オブジェクトにアクセスできます。次のコードでは、まずSOAPMessage
オブジェクトのmessageでSOAPPart
オブジェクトのspを取得した後、これらの2つのメソッドを使用します。spは次に、SOAPEnvelope
オブジェクトのseを取得するのに使用します。
SOAPPart sp = message.getSOAPPart(); SOAPEnvelope se = sp.getEnvelope(); SOAPHeader sh = se.getHeader(); SOAPBody sb = se.getBody();
SOAPEnvelope
オブジェクトの本体やヘッダーは、現行のものを取得したり、削除したり、新しいものを追加したりすることで変更できます。javax.xml.soap.Node
のメソッドdeleteNode
は、呼び出されたXML要素(ノード)を削除します。たとえば、次のコードは、getBody
メソッドで取得したSOAPBody
オブジェクトを削除します。
se.getBody().detachNode();
SOAPHeader
オブジェクトを作成して削除したオブジェクトと置き換える場合、クライアントは、SOAPEnvelope.addHeader
メソッドを使用します。このメソッドを使用すると、新しいヘッダーが作成され、SOAPEnvelope
オブジェクトに追加されます。同様に、addBody
メソッドも新しいSOAPBody
オブジェクトを作成し、SOAPEnvelope
オブジェクトに追加します。次のコードの抜粋では、現在のヘッダーを取得してそれを削除し、新しいヘッダーを追加します。続いて、現在の本体を取得してそれを削除し、新しい本体を追加します。
SOAPPart sp = message.getSOAPPart(); SOAPEnvelope se = sp.getEnvelope(); se.getHeader().detachNode(); SOAPHeader sh = se.addHeader(); se.getBody().detachNode(); SOAPBody sb = se.addBody();すでに
SOAPBody
オブジェクトやSOAPHeader
オブジェクトが存在している場合、これらを追加するとエラーになります。
SOAPEnvelope
インタフェースは、Name
オブジェクトを作成する3つのメソッドを提供します。1つ目のメソッドは、ローカル名、名前空間接頭辞、名前空間URIを使用してName
オブジェクトを作成します。2つ目のメソッドは、ローカル名と名前空間の接頭辞を使用してName
オブジェクトを作成します。3つ目のメソッドは、ローカル名のみを使用してName
オブジェクトを作成します。次のコード行(seはSOAPEnvelope
オブジェクト)では、3つすべてを使用して新しいName
オブジェクトを作成します。
Name name = se.createName("GetLastTradePrice", "WOMBAT", "http://www.wombat.org/trader");
ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE
修飾子と型 | メソッドと説明 |
---|---|
SOAPBody |
addBody()
SOAPBody オブジェクトを作成し、それをこのSOAPEnvelope オブジェクトのSOAPBody オブジェクトとして設定します。 |
SOAPHeader |
addHeader()
SOAPHeader オブジェクトを作成し、それをこのSOAPEnvelope オブジェクトのSOAPHeader オブジェクトとして設定します。 |
Name |
createName(String localName)
指定されたローカル名を使用して初期化された新しい
Name オブジェクトを作成します。 |
Name |
createName(String localName, String prefix, String uri)
指定したローカル名、名前空間接頭辞および名前空間URIを使用して初期化された新しい
Name オブジェクトを作成します。 |
SOAPBody |
getBody()
この
SOAPEnvelope オブジェクトに関連付けられたSOAPBody オブジェクトを返します。 |
SOAPHeader |
getHeader()
この
SOAPEnvelope オブジェクトのSOAPHeader オブジェクトを返します。 |
addAttribute, addAttribute, addChildElement, addChildElement, addChildElement, addChildElement, addChildElement, addChildElement, addNamespaceDeclaration, addTextNode, createQName, getAllAttributes, getAllAttributesAsQNames, getAttributeValue, getAttributeValue, getChildElements, getChildElements, getChildElements, getElementName, getElementQName, getEncodingStyle, getNamespacePrefixes, getNamespaceURI, getVisibleNamespacePrefixes, removeAttribute, removeAttribute, removeContents, removeNamespaceDeclaration, setElementQName, setEncodingStyle
detachNode, getParentElement, getValue, recycleNode, setParentElement, setValue
getAttribute, getAttributeNode, getAttributeNodeNS, getAttributeNS, getElementsByTagName, getElementsByTagNameNS, getSchemaTypeInfo, getTagName, hasAttribute, hasAttributeNS, removeAttribute, removeAttributeNode, removeAttributeNS, setAttribute, setAttributeNode, setAttributeNodeNS, setAttributeNS, setIdAttribute, setIdAttributeNode, setIdAttributeNS
appendChild, cloneNode, compareDocumentPosition, getAttributes, getBaseURI, getChildNodes, getFeature, getFirstChild, getLastChild, getLocalName, getNamespaceURI, getNextSibling, getNodeName, getNodeType, getNodeValue, getOwnerDocument, getParentNode, getPrefix, getPreviousSibling, getTextContent, getUserData, hasAttributes, hasChildNodes, insertBefore, isDefaultNamespace, isEqualNode, isSameNode, isSupported, lookupNamespaceURI, lookupPrefix, normalize, removeChild, replaceChild, setNodeValue, setPrefix, setTextContent, setUserData
Name createName(String localName, String prefix, String uri) throws SOAPException
Name
オブジェクトを作成します。
このファクトリ・メソッドは、SOAP/XMLドキュメントで使用するName
オブジェクトを作成します。
localName
- ローカル名を指定するString
prefix
- 名前空間の接頭辞を指定するString
uri
- 名前空間のURIを指定するString
Name
オブジェクトSOAPException
- SOAPエラーが存在する場合Name createName(String localName) throws SOAPException
Name
オブジェクトを作成します。
このファクトリ・メソッドは、SOAP/XMLドキュメントで使用するName
オブジェクトを作成します。
localName
- ローカル名を指定するString
Name
オブジェクトSOAPException
- SOAPエラーが存在する場合SOAPHeader getHeader() throws SOAPException
SOAPEnvelope
オブジェクトのSOAPHeader
オブジェクトを返します。
デフォルトでは、新しいSOAPMessage
オブジェクトの作成に、空のSOAPHeader
オブジェクトを保持するSOAPEnvelope
オブジェクトを使用します。そのため、getHeader
メソッドは、ヘッダーを削除して新しいものが追加されなかった場合を除き、常にSOAPHeader
オブジェクトを返します。
SOAPHeader
オブジェクト。ない場合はnull
SOAPException
- SOAPHeader
オブジェクトの取得時に問題が発生した場合SOAPBody getBody() throws SOAPException
SOAPEnvelope
オブジェクトに関連付けられたSOAPBody
オブジェクトを返します。
デフォルトでは、新しいSOAPMessage
オブジェクトの作成に、空のSOAPBody
オブジェクトを保持するSOAPEnvelope
オブジェクトを使用します。そのため、getBody
メソッドは、本体を削除して新しいものが追加されなかった場合を除き、常にSOAPBody
オブジェクトを返します。
SOAPEnvelope
のSOAPBody
オブジェクト。存在しない場合はnull
SOAPException
- SOAPBody
オブジェクトの取得時に問題が発生した場合SOAPHeader addHeader() throws SOAPException
SOAPHeader
オブジェクトを作成し、それをこのSOAPEnvelope
オブジェクトのSOAPHeader
オブジェクトとして設定します。
エンベロープにすでにヘッダーが含まれている場合、ヘッダーを追加することはできません。そのため、このメソッドは既存のヘッダーを削除してから呼び出してください。
SOAPHeader
オブジェクトSOAPException
- SOAPEnvelope
オブジェクトにすでに有効なSOAPHeader
オブジェクトが含まれている場合SOAPBody addBody() throws SOAPException
SOAPBody
オブジェクトを作成し、それをこのSOAPEnvelope
オブジェクトのSOAPBody
オブジェクトとして設定します。
エンベロープにすでに本体が含まれている場合、本体を追加することはできません。そのため、このメソッドは既存の本体を削除してから呼び出してください。
SOAPBody
オブジェクトSOAPException
- SOAPEnvelope
オブジェクトにすでに有効なSOAPBody
オブジェクトが含まれている場合 バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.