java.lang.Object
com.sun.xml.ws.client.sei.ResponseBuilder
- Direct Known Subclasses:
ResponseBuilder.AttachmentBuilder
,ResponseBuilder.Body
,ResponseBuilder.Composite
,ResponseBuilder.DocLit
,ResponseBuilder.Header
,ResponseBuilder.NullSetter
,ResponseBuilder.RpcLit
Reads a response
Message
, disassembles it, and moves obtained Java values
to the expected places.- Author:
- Kohsuke Kawaguchi, Jitendra Kotamraju
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
Reads an Attachment into a Java parameter.static final class
Reads the whole payload into a single JAXB bean.static final class
ResponseBuilder
that is a composition of multipleResponseBuilder
s.static final class
Treats a payload as multiple parts wrapped into one element, and processes all such wrapped parts.static final class
Reads a header into a JAXB object.static final class
ResponseBuilder
that sets the VM uninitialized value to the type.static final class
Treats a payload as multiple parts wrapped into one element, and processes all such wrapped parts. -
Field Summary
Modifier and TypeFieldDescriptionstatic final ResponseBuilder
The singleton instance that produces null return value.ResponseBuilder.PartBuilder
keyed by the element name (inside the wrapper element.)protected QName
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic Object
getVMUninitializedValue
(Type type) Returns the 'uninitialized' value for the given type.static final String
Gets the WSDL part name of this attachment.abstract Object
readResponse
(Message reply, Object[] args) Reads a responseMessage
, disassembles it, and moves obtained Java values to the expected places.protected Object
readWrappedResponse
(Message msg, Object[] args)
-
Field Details
-
wrappedParts
ResponseBuilder.PartBuilder
keyed by the element name (inside the wrapper element.) -
wrapperName
-
NONE
The singleton instance that produces null return value. Used for operations that doesn't have any output.
-
-
Constructor Details
-
ResponseBuilder
public ResponseBuilder()
-
-
Method Details
-
readResponse
public abstract Object readResponse(Message reply, Object[] args) throws jakarta.xml.bind.JAXBException, XMLStreamException Reads a responseMessage
, disassembles it, and moves obtained Java values to the expected places.- Parameters:
reply
- The replyMessage
to be de-composed.args
- The Java arguments given to the SEI method invocation. Some parts of the reply message may be set toHolder
s in the arguments.- Returns:
- If a part of the reply message is returned as a return value from the SEI method, this method returns that value. Otherwise null.
- Throws:
jakarta.xml.bind.JAXBException
- if there's an error during unmarshalling the reply message.XMLStreamException
- if there's an error during unmarshalling the reply message.
-
readWrappedResponse
protected Object readWrappedResponse(Message msg, Object[] args) throws jakarta.xml.bind.JAXBException, XMLStreamException - Throws:
jakarta.xml.bind.JAXBException
XMLStreamException
-
getVMUninitializedValue
Returns the 'uninitialized' value for the given type.For primitive types, it's '0', and for reference types, it's null.
-
getWSDLPartName
Gets the WSDL part name of this attachment.According to WSI AP 1.0
3.8 Value-space of Content-Id Header Definition: content-id part encoding The "content-id part encoding" consists of the concatenation of: The value of the name attribute of the wsdl:part element referenced by the mime:content, in which characters disallowed in content-id headers (non-ASCII characters as represented by code points above 0x7F) are escaped as follows: o Each disallowed character is converted to UTF-8 as one or more bytes. o Any bytes corresponding to a disallowed character are escaped with the URI escaping mechanism (that is, converted to %HH, where HH is the hexadecimal notation of the byte value). o The original character is replaced by the resulting character sequence. The character '=' (0x3D). A globally unique value such as a UUID. The character '@' (0x40). A valid domain name under the authority of the entity constructing the message.
So a wsdl:part fooPart will be encoded as:<[email protected]>
- Returns:
- null if the parsing fails.
-