Class EndpointArgumentsBuilder

java.lang.Object
com.sun.xml.ws.server.sei.EndpointArgumentsBuilder
Direct Known Subclasses:
EndpointArgumentsBuilder.AttachmentBuilder, EndpointArgumentsBuilder.Body, EndpointArgumentsBuilder.Composite, EndpointArgumentsBuilder.DocLit, EndpointArgumentsBuilder.Header, EndpointArgumentsBuilder.NullSetter, EndpointArgumentsBuilder.RpcLit

public abstract class EndpointArgumentsBuilder extends Object
Reads a request Message, disassembles it, and moves obtained Java values to the expected places.
Author:
Jitendra Kotamraju
  • Field Details

    • NONE

      public static final EndpointArgumentsBuilder NONE
      The singleton instance that produces null return value. Used for operations that doesn't have any output.
    • wrapperName

      protected QName wrapperName
  • Constructor Details

    • EndpointArgumentsBuilder

      protected EndpointArgumentsBuilder()
      Default constructor.
  • Method Details

    • readRequest

      public abstract void readRequest(Message request, Object[] args) throws jakarta.xml.bind.JAXBException, XMLStreamException
      Reads a request Message, disassembles it, and moves obtained Java values to the expected places.
      Parameters:
      request - The request Message to be de-composed.
      args - The Java arguments given to the SEI method invocation. Some parts of the reply message may be set to Holders in the arguments.
      Throws:
      jakarta.xml.bind.JAXBException - if there's an error during unmarshalling the request message.
      XMLStreamException - if there's an error during unmarshalling the request message.
    • getVMUninitializedValue

      public static Object getVMUninitializedValue(Type type)
      Returns the 'uninitialized' value for the given type.

      For primitive types, it's '0', and for reference types, it's null.

    • readWrappedRequest

      protected void readWrappedRequest(Message msg, Object[] args) throws jakarta.xml.bind.JAXBException, XMLStreamException
      Throws:
      jakarta.xml.bind.JAXBException
      XMLStreamException
    • getWSDLPartName

      public static final String getWSDLPartName(Attachment att)
      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.