Class Stubs


  • public abstract class Stubs
    extends Object
    Factory methods of various stubs.

    This class provides various methods to create "stub"s, which are the component that turns a method invocation into a Message and back into a return value.

    This class is meant to serve as the API from JAX-WS to Tango, so that they don't have hard-code dependency on our implementation classes.

    Common Parameters and Their Meanings

    Pipe next

    Stubs turn a method invocation into a Pipe.process(com.sun.xml.ws.api.message.Packet) invocation, and this pipe passed in as the next parameter will receive a Message from newly created stub. All the methods taking Tube <<next>> parameter are deprecated. JAX-WS Runtime takes care of creating the tubeline when the next parameter is not passed. This gives flexibility for the JAX-WS Runtime to pass extra information during the tube line creation via ClientTubeAssemblerContext.

    WSPortInfo portInfo

    Gives information about the port for which the "stub" being created. Such information includes Port QName, target endpoint address, and bindingId etc.

    BindingImpl binding

    Stubs implement BindingProvider, and its BindingProvider.getBinding() will return this binding object. Stubs often also use this information to decide which SOAP version a Message should be created in.

    WSService service

    This object represents a Service that owns the newly created stub. For example, asynchronous method invocation will use Service.getExecutor().

    WSEndpointReference epr

    If you want the created Dispatch to talk to the given EPR, specify the parameter. Otherwise leave it null. Note that the addressing needs to be enabled separately for this to take effect.

    Author:
    Kohsuke Kawaguchi, Kathy Walsh
    • Method Detail

      • createSAAJDispatch

        @Deprecated
        public static jakarta.xml.ws.Dispatch<jakarta.xml.soap.SOAPMessage> createSAAJDispatch​(QName portName,
                                                                                               WSService owner,
                                                                                               WSBinding binding,
                                                                                               jakarta.xml.ws.Service.Mode mode,
                                                                                               Tube next,
                                                                                               @Nullable
                                                                                               WSEndpointReference epr)
        Deprecated.
        Creates a new Dispatch stub for SOAPMessage. This is short-cut of calling
         createDispatch(port,owner,binding,SOAPMessage.class,mode,next);
         
      • createSAAJDispatch

        public static jakarta.xml.ws.Dispatch<jakarta.xml.soap.SOAPMessage> createSAAJDispatch​(WSPortInfo portInfo,
                                                                                               WSBinding binding,
                                                                                               jakarta.xml.ws.Service.Mode mode,
                                                                                               @Nullable
                                                                                               WSEndpointReference epr)
        Creates a new Dispatch stub for SOAPMessage. This is short-cut of calling
         createDispatch(port,owner,binding,SOAPMessage.class,mode,next);
         
      • createDataSourceDispatch

        @Deprecated
        public static jakarta.xml.ws.Dispatch<jakarta.activation.DataSource> createDataSourceDispatch​(QName portName,
                                                                                                      WSService owner,
                                                                                                      WSBinding binding,
                                                                                                      jakarta.xml.ws.Service.Mode mode,
                                                                                                      Tube next,
                                                                                                      @Nullable
                                                                                                      WSEndpointReference epr)
        Deprecated.
        Creates a new Dispatch stub for DataSource. This is short-cut of calling
         createDispatch(port,owner,binding,DataSource.class,mode,next);
         
      • createDataSourceDispatch

        public static jakarta.xml.ws.Dispatch<jakarta.activation.DataSource> createDataSourceDispatch​(WSPortInfo portInfo,
                                                                                                      WSBinding binding,
                                                                                                      jakarta.xml.ws.Service.Mode mode,
                                                                                                      @Nullable
                                                                                                      WSEndpointReference epr)
        Creates a new Dispatch stub for DataSource. This is short-cut of calling
         createDispatch(port,owner,binding,DataSource.class,mode,next);
         
      • createSourceDispatch

        @Deprecated
        public static jakarta.xml.ws.Dispatch<Source> createSourceDispatch​(QName portName,
                                                                           WSService owner,
                                                                           WSBinding binding,
                                                                           jakarta.xml.ws.Service.Mode mode,
                                                                           Tube next,
                                                                           @Nullable
                                                                           WSEndpointReference epr)
        Deprecated.
        Creates a new Dispatch stub for Source. This is short-cut of calling
         createDispatch(port,owner,binding,Source.class,mode,next);
         
      • createSourceDispatch

        public static jakarta.xml.ws.Dispatch<Source> createSourceDispatch​(WSPortInfo portInfo,
                                                                           WSBinding binding,
                                                                           jakarta.xml.ws.Service.Mode mode,
                                                                           @Nullable
                                                                           WSEndpointReference epr)
        Creates a new Dispatch stub for Source. This is short-cut of calling
         createDispatch(port,owner,binding,Source.class,mode,next);
         
      • createDispatch

        public static <T> jakarta.xml.ws.Dispatch<T> createDispatch​(QName portName,
                                                                    WSService owner,
                                                                    WSBinding binding,
                                                                    Class<T> clazz,
                                                                    jakarta.xml.ws.Service.Mode mode,
                                                                    Tube next,
                                                                    @Nullable
                                                                    WSEndpointReference epr)
        Creates a new Dispatch stub that connects to the given pipe.
        Parameters:
        portName - see Service.createDispatch(QName, Class, Service.Mode).
        owner - see common parameters
        binding - see common parameters
        clazz - Type of the Dispatch to be created. See Service.createDispatch(QName, Class, Service.Mode).
        mode - The mode of the dispatch. See Service.createDispatch(QName, Class, Service.Mode).
        next - see common parameters
        epr - see common parameters TODO: are these parameters making sense?
      • createDispatch

        public static <T> jakarta.xml.ws.Dispatch<T> createDispatch​(WSPortInfo portInfo,
                                                                    WSService owner,
                                                                    WSBinding binding,
                                                                    Class<T> clazz,
                                                                    jakarta.xml.ws.Service.Mode mode,
                                                                    @Nullable
                                                                    WSEndpointReference epr)
        Creates a new Dispatch stub that connects to the given pipe.
        Parameters:
        portInfo - see common parameters
        owner - see common parameters
        binding - see common parameters
        clazz - Type of the Dispatch to be created. See Service.createDispatch(QName, Class, Service.Mode).
        mode - The mode of the dispatch. See Service.createDispatch(QName, Class, Service.Mode).
        epr - see common parameters TODO: are these parameters making sense?
      • createJAXBDispatch

        @Deprecated
        public static jakarta.xml.ws.Dispatch<Object> createJAXBDispatch​(QName portName,
                                                                         WSService owner,
                                                                         WSBinding binding,
                                                                         jakarta.xml.bind.JAXBContext jaxbContext,
                                                                         jakarta.xml.ws.Service.Mode mode,
                                                                         Tube next,
                                                                         @Nullable
                                                                         WSEndpointReference epr)
        Deprecated.
        Creates a new JAXB-based Dispatch stub that connects to the given pipe.
        Parameters:
        portName - see Service.createDispatch(QName, Class, Service.Mode).
        owner - see common parameters
        binding - see common parameters
        jaxbContext - JAXBContext used to convert between objects and XML.
        mode - The mode of the dispatch. See Service.createDispatch(QName, Class, Service.Mode).
        next - see common parameters
        epr - see common parameters
      • createJAXBDispatch

        public static jakarta.xml.ws.Dispatch<Object> createJAXBDispatch​(WSPortInfo portInfo,
                                                                         WSBinding binding,
                                                                         jakarta.xml.bind.JAXBContext jaxbContext,
                                                                         jakarta.xml.ws.Service.Mode mode,
                                                                         @Nullable
                                                                         WSEndpointReference epr)
        Creates a new JAXB-based Dispatch stub that connects to the given pipe.
        Parameters:
        portInfo - see common parameters
        binding - see common parameters
        jaxbContext - JAXBContext used to convert between objects and XML.
        mode - The mode of the dispatch. See Service.createDispatch(QName, Class, Service.Mode).
        epr - see common parameters
      • createPortProxy

        public <T> T createPortProxy​(WSPortInfo portInfo,
                                     WSBinding binding,
                                     SEIModel model,
                                     Class<T> portInterface,
                                     @Nullable
                                     WSEndpointReference epr)
        Creates a new strongly-typed proxy object that implements a given port interface.
        Parameters:
        portInfo - see common parameters
        binding - see common parameters
        model - This model shall represent a port interface. TODO: can model be constructed from portInterface and binding? Find out and update.
        portInterface - The port interface that has operations as Java methods.
        epr - see common parameters