Package org.apache.axis.transport.http
Class QSWSDLHandler
- java.lang.Object
-
- org.apache.axis.transport.http.AbstractQueryStringHandler
-
- org.apache.axis.transport.http.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
-
-
Field Summary
-
Fields inherited from class org.apache.axis.transport.http.AbstractQueryStringHandler
exceptionLog, log
-
-
Constructor Summary
Constructors Constructor Description QSWSDLHandler()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.lang.String
getEndpointURL(MessageContext msgContext)
Returns the endpoint URL that should be used in the returned WSDL.void
invoke(MessageContext msgContext)
Performs the action associated with this particular query string handler.void
reportNoWSDL(javax.servlet.http.HttpServletResponse res, java.io.PrintWriter writer, java.lang.String moreDetailCode, AxisFault axisFault)
Report that we have no WSDL.void
reportWSDL(org.w3c.dom.Document doc, java.io.PrintWriter writer)
Report WSDL.protected void
updateSoapAddressLocationURLs(org.w3c.dom.Document wsdlDoc, MessageContext msgContext)
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.-
Methods inherited from class org.apache.axis.transport.http.AbstractQueryStringHandler
configureFromContext, configureResponseFromAxisFault, convertExceptionToAxisFault, isDevelopment, processAxisFault, writeFault
-
-
-
-
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 detailaxisFault
- 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 documentmsgContext
- 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 theServiceDesc
for this service
-
-