| IBM WebSphere Application ServerTM
Release 6 |
|||||||
PREV NEXT | FRAMES NO FRAMES |
Interface Summary | |
EHTID | Interface for an event handler template object identifier. |
StateObserverEvent | This interface returns observer event specific information as there are the event number and the creation time. |
AIID | Interface for an activity instance object identifier. |
ATID | Interface for an activity template object identifier. |
PIID | Interface for a process instance object identifier. |
StaffResultSet | Provides the results of a query request for persons. |
QueryResultSet | Provides the results of a query request. |
PTID | Interface for a process template object identifier. |
VTID | Interface for a service template object identifier. |
JspLocation | Interface to retrieve JSP locations of a Web client setting. |
PortalClientSetting | Interface for Portal client settings. |
WebClientSetting | Interface for Web client settings. |
ClientSetting | Interface that supports the definition of user specific client settings. |
CustomClientSettings | CustomClientSettings defines the interface for all client and Web client settings that are associated with a process template, process instance, or activity instance. |
OID | Interface for an object identifier. |
EventHandlerTemplateData | Accesses the properties of an event (action) that can be triggered as part of an active event handler. |
StoredQueryData | Accesses the properties of a query stored persistently. |
ProcessTemplateData | Accesses the properties of a process template. |
ActivityInstanceData | Accesses the properties of an activity instance. |
ActivityServiceTemplateData | Accesses the properties of an activity service. |
ProcessInstanceData | Accesses the properties of a process instance. |
WorkListData | Accesses the properties of a worklist. |
WorkItemData | Accesses the properties of a work item. |
CompensationBehaviour | This interface defines symbolic constants that state how to deal with compensation. |
ActivityInstanceActionIndex | This interface defines symbolic constants to be used as a column index for the array of available action flags - see . |
ActivityInstanceActions | This interface defines symbolic constants for all actions that can be performed on activity instances. |
LocalBusinessFlowManagerHome | The home interface of the LocalBusinessFlowManager session bean. |
BusinessFlowManager | BusinessFlowManager is the stateless session bean that represents the remote interface. |
BusinessFlowManagerHome | The home interface of the BusinessFlowManager session bean. |
ProcessTemplateActions | This interface defines symbolic constants for all actions that can be performed on process templates. |
WorkListActions | This interface defines symbolic constants for all actions that can be performed on work lists. |
ProcessInstanceActions | This interface defines symbolic constants for all actions that can be performed on process instances. |
EventHandlerTemplateActions | This interface defines symbolic constants for all actions that can be performed on event handler templates. |
ProcessInstanceActionIndex | This interface defines symbolic constants to be used as a column index for the array of available action flags - see . |
WorkItemActions | This interface defines symbolic constants for all actions that can be performed on work items. |
ActivityServiceTemplateActions | This interface defines symbolic constants for all actions that can be performed on activity service templates. |
CustomProperty | Provides a named custom property. |
BusinessFlowManagerService | BusinessFlowManagerService defines the business functions that can be called by a local or remote client. |
LocalBusinessFlowManager | LocalBusinessFlowManager is the stateless session bean that represents the local interface. |
Class Summary | |
QueryColumnInfo | Provides information on the columns of a query result set. |
ClientObjectWrapper | Wraps messages and variables passed between the caller and the process engine. |
JspUsageEnum | This enumeration class defines symbolic constants for JSP usage patterns. |
JspApplicableRoleEnum | This enumeration class defines symbolic constants for JSP applicable role patterns. |
ProcessResponseWrapper | Wraps the output message returned by a microflow and its associated custom client settings. |
ReplyContextWrapper | Wraps the reply context passed to the process engine. |
Exception Summary | |
RuntimeFaultException | RuntimeFaultException wraps all runtime failures that can happen during the execution of BPEL processes, for example, when executing a script activity or when evaluating a transition condition. |
EngineMissingReceiveException | An EngineMisssingReceiveException is thrown when a message has been received and stored by Process Choreographer and when that message has not been processed before the completion of the process instance for which it was received. |
StandardFaultException | Super class for all BPEL standard faults such as bpws:forceTermination. |
FaultReplyException2 | A FaultReplyException2 states that a fault is returned. |
ProcessFaultException | Represents the exception that is passed to a user or a process activity when a non-interruptible process ends with a process fault. |
WorkItemManagerException | A general non-recoverable exception that occured with Work Item Management functions. |
EngineMissingReplyException | An EngineMisssingReplyException is thrown when the process instance ends and when there is a reply missing for a receive or pick activity that implements a two-way operation. |
NotSerializableException | NotSerializableException is basically a placeholder for nested exceptions that serialization fails. |
BpelException | Super class for all navigation related exceptions that can occur during the execution of BPEL processes. |
FaultReplyException | A FaultReplyException states that a fault is returned. |
SpecificFaultReplyException | A SpecificFaultReplyException states that a fault is returned. |
SendReplyErrorException | Represents the exception that is thrown by ReplyContext methods if sending the reply generates an error. |
ObjectDoesNotExistException | Exception class for error message Api.ObjectDoesNotExist. |
SystemFaultException | Defines an exception which is thrown when during the execution of an activity or the invocation of a plug-in (except the observer plug-in), Process Choreographer itself runs into an error situation. |
ApplicationFaultException2 | An ApplicationFaultException2 extends ApplicationFaultException and additionally provides the namespace of the WSDL message that is associated with the thrown fault variable in case the fault variable is represented by a boxed Java simple type. |
ApplicationFaultException | An ApplicationFaultException wraps fault responses from invoke, throw, or script activities. |
Provides the application programming interface (API) for managing process-related objects in the ProcessChoreographer. You can create application programs that use the API to manage runtime information related to processes. You can:
The API contains a stateless session bean BusinessFlowManager for local and remote access. The BusinessFlowManagerService interface describes the functions that can be called locally and remotely. It exposes the functions that can be called by an application program. The application program can be any Java program, including another EJB.
The application program accesses the BusinessFlowManager session bean through the bean's home and remote or local interfaces. A reference must be added to your application deployment descriptor. For example, for client applications such as a J2EE client application add the reference to the application-client.xml, for a Web application to the web.xml, and for an EJB application to the ejb-jar.xml.
Add the reference to the remote interface as in the following example:
<ejb-ref> <ejb-ref-name>ejb/BusinessFlowManagerHome</ejb-ref-name> <ejb-ref-type>Session<ejb-ref-type> <home>com.ibm.bpe.api.BusinessFlowManagerHome</home> <remote>com.ibm.bpe.api.BusinessFlowManager</remote> </ejb-ref>
Add the reference to the local interface as in the following example:
<ejb-local-ref> <ejb-ref-name>ejb/LocalBusinessFlowManagerHome</ejb-ref-name> <ejb-ref-type>Session<ejb-ref-type> <local-home>com.ibm.bpe.api.LocalBusinessFlowManagerHome</local-home> <local>com.ibm.bpe.api.LocalBusinessFlowManager</local> </ejb-local-ref>
If you are using the remote interface, then the generated API stubs must be packaged with your application:
Note: If you are using the remote interface, then the XSD's describing your messages must be on the classpath.
The BusinessFlowManager home interface is then made available to the client through JNDI by the container where the BusinessFlowManager session bean is deployed. To access the remote interface:
// Obtain the default initial JNDI context Context initialContext= new InitialContext(); // Lookup the remote home interface of the BusinessFlowManager bean Object result= initialContext.lookup("java:comp/env/ejb/BusinessFlowManagerHome"); // Convert the lookup result to the proper type BusinessFlowManagerHome processHome= (BusinessFlowManagerHome)javax.rmi.PortableRemoteObject.narrow(result,BusinessFlowManagerHome.class);To access the local interface:
// Obtain the default initial JNDI context Context initialContext= new InitialContext(); // Lookup the local home interface of the BusinessFlowManager bean LocalBusinessFlowManagerHome processHome= (LocalBusinessFlowManagerHome)initialContext.lookup("java:comp/env/ejb/LocalBusinessFlowManagerHome");
The home interface contains a create method that returns the BusinessFlowManager session bean's remote or local interface. For example, access the remote interface of the session bean:
BusinessFlowManager process= processHome.create();For example, access the local interface of the session bean:
LocalBusinessFlowManager process= processHome.create();
When the BusinessFlowManager session bean is accessed, the application program can call any of the business functions exposed by the API. For example:
process.initiate("MyProcessModel",input);
When an instance of the BusinessFlowManager session bean is created, the container associates a session context with the instance of the session bean. The session context contains the caller's principal ID and an indication whether the caller belongs to the group of BPE system administrators or monitors. This is used by both the container and the process engine to check the caller's authorization for each call.
Authorization is always checked by the Business Flow Manager, even when checking global security is unset. In the latter case, the caller's principal ID is 'UNAUTHENTICATED' and handled like a normal user ID.
Calls are executed as transactions. A transaction is either established and ended explicitly by the application program, or established by the container when the application progam calls the process engine and ended by the container when the application program receives the result (the deployment descriptor specifies TX_REQUIRED). For example, the application program can establish and end a transaction as follows:
// Obtain user transaction interface UserTransaction transaction= (UserTransaction)intialContext.lookup("jta/usertransaction"); // Begin a transaction transaction.begin(); // Process calls ... // On successful return, commit the transaction transaction.commit();Design your own transactions to prevent database deadlocks when multiple transaction instances are running concurrently. For example, the following transaction may result in database deadlocks when run concurrently:
UserTransaction transaction= (UserTransaction)intialContext.lookup("jta/usertransaction"); transaction.begin(); process.getActivityInstance(aiid); // read-locks the task process.claim(aiid); // write-locks the task to update the state transaction.commit();
| IBM WebSphere Application ServerTM
Release 6 |
|||||||
PREV NEXT | FRAMES NO FRAMES |