com.sun.enterprise.security.webservices
Class ServletSystemHandlerDelegate

java.lang.Object
  extended by com.sun.enterprise.security.webservices.ServletSystemHandlerDelegate
All Implemented Interfaces:
com.sun.xml.rpc.spi.runtime.SystemHandlerDelegate

public class ServletSystemHandlerDelegate
extends java.lang.Object
implements com.sun.xml.rpc.spi.runtime.SystemHandlerDelegate

The methods of this interface are invoked by the JAXRPCServletDelegate on the path to web sevice endpoints deployed as servlets. NOTE: The methods of this interface may also be called on the client side of jaxrpc invocations, although at this time, we have not decided from where such invocations would be made.

Author:
Ron Monzillo

Field Summary
protected static java.util.logging.Logger _logger
           
 
Constructor Summary
ServletSystemHandlerDelegate(ServerAuthConfig config, WebServiceEndpoint ep)
           
 
Method Summary
 boolean processRequest(com.sun.xml.rpc.spi.runtime.SOAPMessageContext messageContext)
          The processRequest method is invoked with an object that implements com.sun.xml.rpc.spi.runtime.SOAPMessageContext.
 void processResponse(com.sun.xml.rpc.spi.runtime.SOAPMessageContext messageContext)
          The processResponse method is invoked with an object that implements com.sun.xml.rpc.spi.runtime.SOAPMessageContext.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

_logger

protected static final java.util.logging.Logger _logger
Constructor Detail

ServletSystemHandlerDelegate

public ServletSystemHandlerDelegate(ServerAuthConfig config,
                                    WebServiceEndpoint ep)
Method Detail

processRequest

public boolean processRequest(com.sun.xml.rpc.spi.runtime.SOAPMessageContext messageContext)
The processRequest method is invoked with an object that implements com.sun.xml.rpc.spi.runtime.SOAPMessageContext.

When this method is called by the JAXRPCServletDelegate (on the server side of jaxrpc servlet container invocation processing) it must be called just before the call to implementor.getTie().handle(), and at the time of the request message and the following properties must have been set on the SOAPMessageContext.

com.sun.xml.rpc.server.http.MessageContextProperties.IMPLEMENTOR
This property must be set to the com.sun.xml.rpc.spi.runtime.Implementor object corresponding to the target endpoint.

com.sun.xml.rpc.server.http.MessageContextProperties.HTTP_SERVLET_REQUEST
This property must be set to the javax.servlet.http.HttpServletRequest object containing the JAXRPC invocation.

com.sun.xml.rpc.server.http.MessageContextProperties.HTTP_SERVLET_RESPONSE
This property must be set to the javax.servlet.http.HttpServletResponse object corresponding to the JAXRPC invocation.

com.sun.xml.rpc.server.MessageContextProperties.HTTP_SERVLET_CONTEXT
This property must be set to the javax.servlet.ServletContext object corresponding to web application in which the JAXRPC servlet is running.

Specified by:
processRequest in interface com.sun.xml.rpc.spi.runtime.SystemHandlerDelegate
Parameters:
messageContext - the SOAPMessageContext object containing the request message and the properties described above.
Returns:
true if processing by the delegate was such that the caller should continue with its normal message processing. Returns false if the processing by the delegate resulted in the messageContext containing a response message that should be returned without the caller proceding to its normal message processing.
Throws:
java.lang.RuntimeException - when the processing by the delegate failed, without yielding a response message. In this case, the expectation is that the caller will return a HTTP layer response code reporting that an internal error occured.

processResponse

public void processResponse(com.sun.xml.rpc.spi.runtime.SOAPMessageContext messageContext)
The processResponse method is invoked with an object that implements com.sun.xml.rpc.spi.runtime.SOAPMessageContext.

When this method is called by the JAXRPCServletDelegate (on the server side of jaxrpc servlet container invocation processing) it must be called just just after the call to implementor.getTie().handle(). In the special case where the handle method throws an exception, the processResponse message must not be called.

The SOAPMessageContext passed to the processRequest and handle messages is passed to the processResponse method.

Specified by:
processResponse in interface com.sun.xml.rpc.spi.runtime.SystemHandlerDelegate
Throws:
java.lang.RuntimeException - when the processing by the delegate failed, in which case the caller is expected to return an HTTP layer response code reporting that an internal error occured.


Copyright © 2012 GlassFish Community. All Rights Reserved.