public abstract class AbstractCustomInvokeService extends AbstractService implements org.activebpel.wsio.invoke.IAeInvokeHandler, org.activebpel.rt.IAePolicyConstants
Modifier and Type | Field and Description |
---|---|
protected static SimpleDateFormat |
DATE_FORMAT |
ALL_MATCHINGMETHODS, EMPTY_LANGUAGEPAIRS, EMPTY_LANGUAGEPATHS, EMPTY_LANGUAGES, MINIMUM_MATCHINGMETHODS
ABPEL_RETRY_CHECK_NS, ADDUTELEMENT, AE_CONTEXT_MAPPED_PROPERTIES, ANONYMOUS_PRINCIPAL, ATTR_HTTP_CLIENT_CONNECTION_TIMEOUT, ATTR_HTTP_CONNECTION_MANAGER_TIMEOUT, ATTR_HTTP_REDIRECT_WITH_GET, ATTR_HTTP_SOCKET_TIMEOUT, ATTR_HTTP_TCP_NODELAY, ATTR_JMS_CORRELATION_ID, ATTR_JMS_EXPIRATION, ATTR_JMS_MANAGER_ID, ATTR_JMS_MESSAGE_FORMAT, ATTR_JMS_MESSAGE_TYPE, ATTR_JMS_PRIORITY, ATTR_SUSPEND_PROCESS, CONVERSATION_ID_HEADER, CRYPTO_PROPERTIES, DEFAULT_USER, DIRECTION_BOTH, DIRECTION_IN, DIRECTION_OUT, DIRECTREFERENCE, ENCRYPTION_ACTION, FAULT_EXCLUSION_LIST_ATTR, FAULT_LIST_ATTR, INTERVAL_TAG, ISSUER_SERIAL, JMS_BYTES_MESSAGE, JMS_SOAP_FORMAT, JMS_TEXT_MESSAGE, JMS_XML_FORMAT, PARAM_DELEGATE_CLASS, PARAM_HANDLER_CLASS, PARAM_RECEIVE_HANDLER, PARAM_STYLE, PARAM_TRANSPORT, PARAM_USE, PRINCIPAL_HEADER, PROCESS_SERVICE_NAME_ATTR, QNAME_WILDCARD, RECEIVER_ACTION, RETRY_ATTEMPTS_ATTR, RETRY_CHECK_INPUT_TAG, RETRY_CHECK_OUTPUT_PART, RETRY_CHECK_PROCESS_ID_TAG, RETRY_FAULT_ON_FAILURE, RETRY_INTERVAL_ATTR, RETRY_ON_FAILURE_ATTR, RETRY_POLICY_TAG, RETRY_SUSPEND_ON_FAILURE, RETRY_TAG, RM_TRANS_ID, RM_TRANSPORT, SAML_AUTH_METHOD, SAML_CONFIRM_HOLDER_OF_KEY, SAML_CONFIRM_METHOD, SAML_CONFIRM_SENDER_VOUCHES, SAML_SUBJECT_NAME, SECURITY_ACTION, SIGNATURE_ACTION, SIGNATURE_USER, TAG_ALIAS_ATTR, TAG_ASSERT_ACK_INTERVAL, TAG_ASSERT_AUTH_NONCE, TAG_ASSERT_AUTH_PASSWORD, TAG_ASSERT_AUTH_PREEMPTIVE, TAG_ASSERT_AUTH_PWD_CLEARTEXT, TAG_ASSERT_AUTH_PWD_DIGEST, TAG_ASSERT_AUTH_PWD_TEXT, TAG_ASSERT_AUTH_SAML, TAG_ASSERT_AUTH_USER, TAG_ASSERT_AUTH_USERNAMETOKEN, TAG_ASSERT_EXP_BACKOFF, TAG_ASSERT_MANAGED_CORRELATION, TAG_ASSERT_MAP_PROCESS_INTIATOR, TAG_ASSERT_MILLIS, TAG_ASSERT_RM, TAG_ASSERT_RM_ACKTO, TAG_ASSERT_RM_BINDING, TAG_ASSERT_RM_PROXY, TAG_ASSERT_RM_RETRY_INTERVAL, TAG_ASSERT_RM_TIMEOUT, TAG_ASSERT_SECURITY_AUTH, TAG_ASSERT_SECURITY_ENCRYPT, TAG_ASSERT_SECURITY_SIGN, TAG_ASSERT_TIMESTAMP, TAG_ASSERT_XPATH_RECEIVE, TAG_ASSERT_XPATH_SEND, TAG_DESCRIPTION_ATTR, TAG_DIRECTION_ATTR, TAG_HTTP_MIME_TYPE, TAG_HTTP_TRANSPORT_OPTIONS, TAG_HTTP_XML_TYPES, TAG_INVOKE_RECOVERY, TAG_JMS_DELIVERY, TAG_NAME_ATTR, TAG_NAMESPACE_ATTR, TAG_REST_ENABLED, TAG_REST_USAGE, TAG_TYPE_ATTR, TAG_VALUE_ATTR, X509KEYIDENTIFIER, XMLNS_PREFIX, XPATH_MAP, XPATH_PREFIX, XPATH_QUERY_PARAMS, XPATH_QUERY_SOURCE, XPATH_QUERY_SOURCE_CONTEXT, XPATH_QUERY_SOURCE_OPTIONS
Constructor and Description |
---|
AbstractCustomInvokeService() |
Modifier and Type | Method and Description |
---|---|
protected org.apache.axis.client.Call |
createCall(javax.wsdl.Service aWsdlService,
javax.wsdl.Operation aOperation,
org.activebpel.wsio.IAeWebServiceEndpointReference aEndpoint,
org.activebpel.rt.bpel.server.engine.invoke.AeAddressHandlingType aAddressHandlingType,
org.activebpel.wsio.IAeWebServiceEndpointReference aDefaultReplyTo)
Create and configure the client call object.
|
protected org.activebpel.rt.axis.bpel.invokers.AeAxisInvokeContext |
createInvokeContext(org.activebpel.wsio.invoke.IAeInvoke aInvoke,
javax.wsdl.Operation aOperation,
org.activebpel.wsio.invoke.AeInvokeResponse aResponse,
org.apache.axis.client.Call aCall)
Create the invoke context.
|
protected org.activebpel.wsio.AeWebServiceMessageData |
createOutputMessageData(org.activebpel.rt.axis.bpel.invokers.AeAxisInvokeContext aContext)
Creates the container for the response or null if it's a one-way
|
protected org.activebpel.wsio.AeWebServiceMessageData |
extractMessageData(javax.wsdl.Fault aWsdlFault,
Element aFirstDetailElement)
Extracts the message data from an AxisFault's fault details.
|
protected javax.wsdl.Fault |
findMatchingWsdlFault(Element aFaultDetailElement,
Collection aDefinedFaultsForOperationColl)
Attempts to match the element to one of the declared faults for the operation
invoked.
|
protected javax.wsdl.BindingOperation |
getBindingOperation(javax.wsdl.Service aWsdlService,
String aOperationName,
org.activebpel.wsio.IAeWebServiceEndpointReference aEndpointRef)
Get the
BindingOperation from the service object. |
protected String |
getEndpointUrl(javax.wsdl.Service aWsdlService,
org.activebpel.wsio.IAeWebServiceEndpointReference aEndpointRef,
org.activebpel.rt.bpel.server.engine.invoke.AeAddressHandlingType aAddressHandlingType)
Extract the endpoint url string from the service.
|
protected String |
getErrorDetail(org.apache.axis.AxisFault aFault)
Converts the Element[] in Axis's faultDetail to a String for as the error
detail string in our response.
|
protected Map |
getPolicyDrivenProperties(List aPolicyList)
Get policy driven call properties.
|
protected abstract javax.wsdl.Port |
getPort(javax.wsdl.Service service) |
protected javax.wsdl.PortType |
getPortType(javax.wsdl.Service aWsdlService,
org.activebpel.wsio.IAeWebServiceEndpointReference aEndpointRef,
org.activebpel.wsio.invoke.IAeInvoke aInvoker)
Get the
PortType that we're invoking. |
String |
getPortTypeName()
_portTypeを返す。
|
protected org.apache.axis.constants.Style |
getRequestStyle(javax.wsdl.Service aWsdlService,
String aOperationName,
org.activebpel.wsio.IAeWebServiceEndpointReference aEndpointRef)
Determine the call style (RPC or Document).
|
protected javax.wsdl.Service |
getServiceObject(org.activebpel.wsio.invoke.IAeInvoke aInvoke,
org.activebpel.wsio.IAeWebServiceEndpointReference aEndpointRef)
Find the matching
javax.wsdl.Service service object. |
protected String |
getSoapAction(javax.wsdl.Service aWsdlService,
String aOperationName,
org.activebpel.wsio.IAeWebServiceEndpointReference aEndpointRef)
Look for the value of a soapAction attribute.
|
org.activebpel.wsio.IAeWebServiceResponse |
handleInvoke(org.activebpel.wsio.invoke.IAeInvoke invokeRequest,
String queryData) |
protected abstract org.activebpel.wsio.IAeWebServiceResponse |
invoke(org.activebpel.wsio.invoke.IAeInvoke invokeRequest,
String queryData,
QName qName) |
protected boolean |
isMatch(boolean aTypeFlag,
QName aType,
javax.wsdl.Part aPart)
Determines if the part we're inspecting matches the type that we found in
the fault details.
|
protected boolean |
isSimpleType(Element aElement)
Helper method that checks to see if the passed elements data is a simple type
or complex type.
|
protected javax.wsdl.Fault |
resolveToWsdlFault(String aNamespaceUri,
javax.wsdl.Operation aOperation,
QName aFaultCode,
Element aFirstDetailElement)
Attempts to resolve the AxisFault to a fault defined for the operation being invoked.
|
protected void |
setCredentialsOnCall(org.activebpel.wsio.IAeWebServiceEndpointReference aEndpointReference,
org.apache.axis.client.Call aCall)
Extracts the credentials (if any) from the endpoint reference and sets them
on the call object.
|
protected void |
setFaultOnResponse(String aPortTypeNamespace,
javax.wsdl.Operation aOper,
org.apache.axis.AxisFault aAxisFault,
org.activebpel.wsio.invoke.AeInvokeResponse aResponse)
Sets the fault data on the response.
|
void |
setPortTypeName(String type)
_portTypeを設定する。
|
protected void |
setupCallForPolicies(List aPolicyList,
org.apache.axis.client.Call aCall)
Call setup for policy assertions.
|
protected org.activebpel.wsio.IAeWebServiceEndpointReference |
updateReplyToEndpoint(org.activebpel.wsio.invoke.IAeInvoke aInvoke)
Extract the wsa:ReplyTo
IAeWebServiceEndpointReference from the
IAeInvoke object and see if we need to include engine managed correlation headers. |
acquireSemaphore, checkStartupException, convertLanguagePairs, convertLanguages, doGetLastUpdate, getCurrentServiceContext, getDoDoubleSearch, getEliminateDuplicates, getInitParameter, getInitParameterBoolean, getInitParameterInt, getInitParameterLong, getInitParameters, getInitParameterString, getInitParameterUsingTransformer, getLastUpdate, getLogListener, getMaxResults, getMaxWaitMillisForExternalProcess, getRequestMimeHeaders, getServiceContext, getWorkDirectory, getWorkFile, log, parseDateMacro, processEnd, processEnd, processLap, processStart, releaseSemaphore, setCurrentServiceContext, setDoubleSearchResults, setEliminateDuplicates, setLogListener, setMaxResults, setMaxThreads, setMaxWaitMillisForExternalProcess, setMaxWaitMillisForThread, setMeasureProcessTime, setProcessTimeWarningThreasholdMillis, setStartupException
getComponentServiceFactory, getFile, getServiceName, setComponentServiceFactory, setServiceName
protected static final SimpleDateFormat DATE_FORMAT
public org.activebpel.wsio.IAeWebServiceResponse handleInvoke(org.activebpel.wsio.invoke.IAeInvoke invokeRequest, String queryData)
handleInvoke
in interface org.activebpel.wsio.invoke.IAeInvokeHandler
protected abstract org.activebpel.wsio.IAeWebServiceResponse invoke(org.activebpel.wsio.invoke.IAeInvoke invokeRequest, String queryData, QName qName)
protected org.activebpel.wsio.IAeWebServiceEndpointReference updateReplyToEndpoint(org.activebpel.wsio.invoke.IAeInvoke aInvoke) throws org.activebpel.rt.bpel.AeBusinessProcessException
IAeWebServiceEndpointReference
from the
IAeInvoke
object and see if we need to include engine managed correlation headers.aInvoke
- org.activebpel.rt.bpel.AeBusinessProcessException
protected javax.wsdl.Service getServiceObject(org.activebpel.wsio.invoke.IAeInvoke aInvoke, org.activebpel.wsio.IAeWebServiceEndpointReference aEndpointRef) throws org.activebpel.rt.bpel.AeBusinessProcessException
javax.wsdl.Service
service object.aInvoke
- aEndpointRef
- org.activebpel.rt.bpel.AeBusinessProcessException
protected org.apache.axis.client.Call createCall(javax.wsdl.Service aWsdlService, javax.wsdl.Operation aOperation, org.activebpel.wsio.IAeWebServiceEndpointReference aEndpoint, org.activebpel.rt.bpel.server.engine.invoke.AeAddressHandlingType aAddressHandlingType, org.activebpel.wsio.IAeWebServiceEndpointReference aDefaultReplyTo) throws Exception
aWsdlService
- aOperation
- aEndpoint
- Exception
protected String getEndpointUrl(javax.wsdl.Service aWsdlService, org.activebpel.wsio.IAeWebServiceEndpointReference aEndpointRef, org.activebpel.rt.bpel.server.engine.invoke.AeAddressHandlingType aAddressHandlingType) throws org.activebpel.rt.bpel.AeBusinessProcessException
aWsdlService
- aEndpointRef
- aAddressHandlingType
- org.activebpel.rt.bpel.AeBusinessProcessException
protected org.apache.axis.constants.Style getRequestStyle(javax.wsdl.Service aWsdlService, String aOperationName, org.activebpel.wsio.IAeWebServiceEndpointReference aEndpointRef) throws org.activebpel.rt.bpel.AeBusinessProcessException
aWsdlService
- aOperationName
- aEndpointRef
- org.activebpel.rt.bpel.AeBusinessProcessException
protected String getSoapAction(javax.wsdl.Service aWsdlService, String aOperationName, org.activebpel.wsio.IAeWebServiceEndpointReference aEndpointRef) throws org.activebpel.rt.bpel.AeBusinessProcessException
aWsdlService
- aOperationName
- aEndpointRef
- org.activebpel.rt.bpel.AeBusinessProcessException
protected javax.wsdl.BindingOperation getBindingOperation(javax.wsdl.Service aWsdlService, String aOperationName, org.activebpel.wsio.IAeWebServiceEndpointReference aEndpointRef) throws org.activebpel.rt.bpel.AeBusinessProcessException
BindingOperation
from the service object.aWsdlService
- aOperationName
- aEndpointRef
- org.activebpel.rt.bpel.AeBusinessProcessException
protected javax.wsdl.PortType getPortType(javax.wsdl.Service aWsdlService, org.activebpel.wsio.IAeWebServiceEndpointReference aEndpointRef, org.activebpel.wsio.invoke.IAeInvoke aInvoker) throws org.activebpel.rt.bpel.AeBusinessProcessException
PortType
that we're invoking.aWsdlService
- aEndpointRef
- aInvoker
- org.activebpel.rt.bpel.AeBusinessProcessException
protected org.activebpel.rt.axis.bpel.invokers.AeAxisInvokeContext createInvokeContext(org.activebpel.wsio.invoke.IAeInvoke aInvoke, javax.wsdl.Operation aOperation, org.activebpel.wsio.invoke.AeInvokeResponse aResponse, org.apache.axis.client.Call aCall)
aInvoke
- aOperation
- aResponse
- aCall
- protected void setFaultOnResponse(String aPortTypeNamespace, javax.wsdl.Operation aOper, org.apache.axis.AxisFault aAxisFault, org.activebpel.wsio.invoke.AeInvokeResponse aResponse)
aPortTypeNamespace
- namespace of the port type we invokedaOper
- the operation we invokedaAxisFault
- fault generated from invokeaResponse
- response object we're populatingprotected javax.wsdl.Fault resolveToWsdlFault(String aNamespaceUri, javax.wsdl.Operation aOperation, QName aFaultCode, Element aFirstDetailElement)
aNamespaceUri
- namespace for the operation, used to identify the fault nameaOperation
- wsdl operation invokedaFaultCode
- QName from the faultcode element in the faultaFirstDetailElement
- The first element within the fault detailsprotected javax.wsdl.Fault findMatchingWsdlFault(Element aFaultDetailElement, Collection aDefinedFaultsForOperationColl)
aFaultDetailElement
- The first detail element from the soap faultaDefinedFaultsForOperationColl
- Collection of faults defined for the operation invoked.protected boolean isMatch(boolean aTypeFlag, QName aType, javax.wsdl.Part aPart)
aTypeFlag
- true if QName we found maps to a type, false if it maps to a schema element.aType
- qname of the type we're looking foraPart
- wsdl part from the fault messageprotected String getErrorDetail(org.apache.axis.AxisFault aFault)
aFault
- protected org.activebpel.wsio.AeWebServiceMessageData extractMessageData(javax.wsdl.Fault aWsdlFault, Element aFirstDetailElement)
aWsdlFault
- aFirstDetailElement
- protected boolean isSimpleType(Element aElement)
aElement
- The element to check the contents of.protected void setCredentialsOnCall(org.activebpel.wsio.IAeWebServiceEndpointReference aEndpointReference, org.apache.axis.client.Call aCall)
aEndpointReference
- aCall
- protected Map getPolicyDrivenProperties(List aPolicyList) throws org.activebpel.rt.bpel.AeBusinessProcessException
aPolicyList
- org.activebpel.rt.bpel.AeBusinessProcessException
protected void setupCallForPolicies(List aPolicyList, org.apache.axis.client.Call aCall) throws org.activebpel.rt.AeException
aPolicyList
- aCall
- org.activebpel.rt.AeException
protected org.activebpel.wsio.AeWebServiceMessageData createOutputMessageData(org.activebpel.rt.axis.bpel.invokers.AeAxisInvokeContext aContext)
aContext
- public String getPortTypeName()
public void setPortTypeName(String type)
type
- _portTypeprotected abstract javax.wsdl.Port getPort(javax.wsdl.Service service)