|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.apache.axis.handlers.BasicHandler org.apache.axis.providers.BasicProvider bexee.axis.BexeeProvider
This is the Axis provider (also commonly called pivot handler) used by all deployed BPEL process web services.
This provider takes the incoming SOAP message, performs a number of checks
(e.g. verifying whether the requested operation can actually be performed by
our ProcessController
), puts all the necessary information
into a new BexeeMessage
and dispatches it to
Dispatcher
.
As soon as the provider receives the result back from the dispatcher, it will create a new SOAP response and hand it back to the Axis response flow, from where it will eventually be sent back to the client that invoked the service.
Field Summary |
Fields inherited from class org.apache.axis.providers.BasicProvider |
entLog, log, OPTION_EXTRACLASSES, OPTION_WSDL_INPUTSCHEMA, OPTION_WSDL_PORTTYPE, OPTION_WSDL_SERVICEELEMENT, OPTION_WSDL_SERVICEPORT, OPTION_WSDL_SOAPACTION_MODE, OPTION_WSDL_TARGETNAMESPACE |
Fields inherited from class org.apache.axis.handlers.BasicHandler |
makeLockable, name, options |
Constructor Summary | |
BexeeProvider()
|
Method Summary | |
protected BexeeMessage |
createBexeeMessage(java.lang.String service,
java.lang.String operation,
java.util.Vector params)
Helper method to create the BexeeMessage |
protected java.lang.Object |
dispatch(BexeeMessage message)
Call dispatcher to kick off the process controller and return result |
void |
generateWSDL(org.apache.axis.MessageContext ctx)
Gets WSDL associated with requested BPEL process from DAO and adds binding information on the fly. |
protected java.lang.String |
getLocationURL(org.apache.axis.MessageContext ctx)
Gets the service location URL. |
protected java.lang.String |
getServiceName(org.apache.axis.MessageContext ctx)
|
void |
initServiceDesc(org.apache.axis.handlers.soap.SOAPService service,
org.apache.axis.MessageContext msgContext)
|
void |
invoke(org.apache.axis.MessageContext ctx)
Creates a BexeeMessage from an incoming SOAP message and
passes it to the Dispatcher from where it will be dispatched to
the ProcessController .
|
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 |
Constructor Detail |
public BexeeProvider()
Method Detail |
public void initServiceDesc(org.apache.axis.handlers.soap.SOAPService service, org.apache.axis.MessageContext msgContext) throws org.apache.axis.AxisFault
org.apache.axis.AxisFault
public void invoke(org.apache.axis.MessageContext ctx) throws org.apache.axis.AxisFault
BexeeMessage
from an incoming SOAP message and
passes it to the Dispatcher
from where it will be dispatched to
the ProcessController
.
Once the processing is completed, the result from the Dispatcher
is taken and put back into a SOAP message and passed back into the Axis
response flow.
Right now and Object of type Element
is passed back into the
response flow, because we don't generate Java objects from complex XML
types.
TODO: This class needs some work, especially the message type stuff (possible improvements: code generation from wsdl, serializing and deserializing into Java objects)
org.apache.axis.AxisFault
public void generateWSDL(org.apache.axis.MessageContext ctx) throws org.apache.axis.AxisFault
If the target service endpoint URL can not be determined, a constant value with the default services root is assumed.
org.apache.axis.AxisFault
protected java.lang.String getLocationURL(org.apache.axis.MessageContext ctx)
String
protected java.lang.String getServiceName(org.apache.axis.MessageContext ctx)
protected BexeeMessage createBexeeMessage(java.lang.String service, java.lang.String operation, java.util.Vector params) throws org.apache.axis.AxisFault
BexeeMessage
org.apache.axis.AxisFault
protected java.lang.Object dispatch(BexeeMessage message) throws DispatcherException
Dispatcher
DispatcherException
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |