com.opensymphony.workflow.util.ejb.remote
Class RemoteEJBFunctionProvider

java.lang.Object
  extended by com.opensymphony.workflow.util.ejb.remote.RemoteEJBFunctionProvider
All Implemented Interfaces:
FunctionProvider

public class RemoteEJBFunctionProvider
extends Object
implements FunctionProvider

Function to execute a remote EJB that implements FunctionProviderRemote. A required argument for this function is ejb.location, which specifies the JNDI location to look up the remote EJB at.

Note that by default, the EJB will be looked up from a default InitialContext. It is however possible to specify an environment for the initial context by specifying the standard JNDI keys as arguments.

For example, specifying an argument with a name of java.naming.security.principal and a value of testuser will result in an InitialContext being created with the user specified as 'testuser'.

Version:
$Revision: 1.3 $
Author:
$Author: hani $

Constructor Summary
RemoteEJBFunctionProvider()
           
 
Method Summary
 void execute(Map transientVars, Map args, com.opensymphony.module.propertyset.PropertySet ps)
          Execute this function
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RemoteEJBFunctionProvider

public RemoteEJBFunctionProvider()
Method Detail

execute

public void execute(Map transientVars,
                    Map args,
                    com.opensymphony.module.propertyset.PropertySet ps)
             throws WorkflowException
Description copied from interface: FunctionProvider
Execute this function

Specified by:
execute in interface FunctionProvider
Parameters:
transientVars - Variables that will not be persisted. These include inputs given in the Workflow.initialize(java.lang.String, int, java.util.Map) and Workflow.doAction(long, int, java.util.Map) method calls. There are a number of special variable names:
  • entry: (object type: WorkflowEntry) The workflow instance
  • context: (object type: WorkflowContext). The workflow context.
  • actionId: The Integer ID of the current action that was take (if applicable).
  • currentSteps: A Collection of the current steps in the workflow instance.
  • store: The WorkflowStore.
  • descriptor: The WorkflowDescriptor.
Also, any variable set as a Register), will also be available in the transient map, no matter what. These transient variables only last through the method call that they were invoked in, such as Workflow.initialize(java.lang.String, int, java.util.Map) and Workflow.doAction(long, int, java.util.Map).
args - The properties for this function invocation. Properties are created from arg nested elements within the xml, an arg element takes in a name attribute which is the properties key, and the CDATA text contents of the element map to the property value.
ps - The persistent variables that are associated with the current instance of the workflow. Any change made to the propertyset are persisted to the propertyset implementation's persistent store.
Throws:
WorkflowException

OpenSymphony Workflow Project Page