Class QSWSDLHandler

  • All Implemented Interfaces:
    QSHandler

    public class QSWSDLHandler
    extends AbstractQueryStringHandler
    The QSWSDLHandler class is a handler which provides an AXIS service's WSDL document when the query string "wsdl" (ignoring case) is encountered in an AXIS servlet invocation.
    Author:
    Curtiss Howard (code mostly from AxisServlet class), Doug Davis (dug@us.ibm.com), Steve Loughran, Ian P. Springer, Sal Campana
    • Constructor Detail

      • QSWSDLHandler

        public QSWSDLHandler()
    • Method Detail

      • invoke

        public void invoke​(MessageContext msgContext)
                    throws AxisFault
        Performs the action associated with this particular query string handler.
        Parameters:
        msgContext - a MessageContext object containing message context information for this query string handler.
        Throws:
        AxisFault - if an error occurs
      • reportWSDL

        public void reportWSDL​(org.w3c.dom.Document doc,
                               java.io.PrintWriter writer)
        Report WSDL.
        Parameters:
        doc -
        writer -
      • reportNoWSDL

        public void reportNoWSDL​(javax.servlet.http.HttpServletResponse res,
                                 java.io.PrintWriter writer,
                                 java.lang.String moreDetailCode,
                                 AxisFault axisFault)
        Report that we have no WSDL.
        Parameters:
        res -
        writer -
        moreDetailCode - optional name of a message to provide more detail
        axisFault - optional fault string, for extra info at debug time only
      • updateSoapAddressLocationURLs

        protected void updateSoapAddressLocationURLs​(org.w3c.dom.Document wsdlDoc,
                                                     MessageContext msgContext)
                                              throws AxisFault
        Updates the soap:address locations for all ports in the WSDL using the URL from the request as the base portion for the updated locations, ensuring the WSDL returned to the client contains the correct location URL.
        Parameters:
        wsdlDoc - the WSDL as a DOM document
        msgContext - the current Axis JAX-RPC message context
        Throws:
        AxisFault - if we fail to obtain the list of deployed service names from the server config
      • getEndpointURL

        protected java.lang.String getEndpointURL​(MessageContext msgContext)
                                           throws AxisFault
        Returns the endpoint URL that should be used in the returned WSDL.
        Parameters:
        msgContext - the current Axis JAX-RPC message context
        Returns:
        the endpoint URL that should be used in the returned WSDL
        Throws:
        AxisFault - if we fail to obtain the ServiceDesc for this service