org.apache.axis.providers.java
Class RPCProvider

java.lang.Object
  |
  +--org.apache.axis.handlers.BasicHandler
        |
        +--org.apache.axis.providers.BasicProvider
              |
              +--org.apache.axis.providers.java.JavaProvider
                    |
                    +--org.apache.axis.providers.java.RPCProvider
All Implemented Interfaces:
Handler, java.io.Serializable
Direct Known Subclasses:
CORBAProvider, EJBProvider, RMIProvider

public class RPCProvider
extends JavaProvider

Implement message processing by walking over RPCElements of the envelope body, invoking the appropriate methods on the service object.

Author:
Doug Davis (dug@us.ibm.com)
See Also:
Serialized Form

Field Summary
protected static org.apache.commons.logging.Log log
           
 
Fields inherited from class org.apache.axis.providers.java.JavaProvider
entLog, OPTION_ALLOWEDMETHODS, OPTION_CLASSNAME, OPTION_CLASSPATH, OPTION_IS_STATIC, OPTION_SCOPE, OPTION_WSDL_INPUTSCHEMA, OPTION_WSDL_PORTTYPE, OPTION_WSDL_SERVICEELEMENT, OPTION_WSDL_SERVICEPORT, OPTION_WSDL_TARGETNAMESPACE
 
Fields inherited from class org.apache.axis.handlers.BasicHandler
makeLockable, name, options
 
Constructor Summary
RPCProvider()
           
 
Method Summary
protected  void checkMethodName(MessageContext msgContext, java.lang.String allowedMethods, java.lang.String methodName)
          Throw an AxisFault if the requested method is not allowed.
protected  java.lang.Object invokeMethod(MessageContext msgContext, java.lang.reflect.Method method, java.lang.Object obj, java.lang.Object[] argValues)
          This method encapsulates the method invocation.
 void processMessage(MessageContext msgContext, SOAPEnvelope reqEnv, SOAPEnvelope resEnv, java.lang.Object obj)
          Process the current message.
 
Methods inherited from class org.apache.axis.providers.java.JavaProvider
generateWSDL, getServiceClass, getServiceClassName, getServiceClassNameOptionName, getServiceObject, initServiceDesc, invoke, makeNewServiceObject
 
Methods inherited from class org.apache.axis.providers.BasicProvider
addOperation, getOperationName, getOperationNames, getOperationQNames
 
Methods inherited from class org.apache.axis.handlers.BasicHandler
canHandleBlock, cleanup, getDeploymentData, getName, getOption, getOptions, getUnderstoodHeaders, init, initHashtable, onFault, setName, setOption, setOptionDefault, setOptions, setOptionsLockable
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

log

protected static org.apache.commons.logging.Log log
Constructor Detail

RPCProvider

public RPCProvider()
Method Detail

processMessage

public void processMessage(MessageContext msgContext,
                           SOAPEnvelope reqEnv,
                           SOAPEnvelope resEnv,
                           java.lang.Object obj)
                    throws java.lang.Exception
Process the current message. Result in resEnv.

Specified by:
processMessage in class JavaProvider
Parameters:
msgContext - self-explanatory
reqEnv - the request envelope
resEnv - the response envelope
obj - the service object itself
java.lang.Exception

invokeMethod

protected java.lang.Object invokeMethod(MessageContext msgContext,
                                        java.lang.reflect.Method method,
                                        java.lang.Object obj,
                                        java.lang.Object[] argValues)
                                 throws java.lang.Exception
This method encapsulates the method invocation.

Parameters:
msgContext - MessageContext
method - the target method.
obj - the target object
argValues - the method arguments
java.lang.Exception

checkMethodName

protected void checkMethodName(MessageContext msgContext,
                               java.lang.String allowedMethods,
                               java.lang.String methodName)
                        throws java.lang.Exception
Throw an AxisFault if the requested method is not allowed.

Parameters:
msgContext - MessageContext
allowedMethods - list of allowed methods
methodName - name of target method
java.lang.Exception


Copyright © 2003 Apache Web Services Project. All Rights Reserved.