You can programmatically suspend a running process instance
by using the Java API and web services. When suspended, a process
instance is placed in a suspending state and then a suspended state.
Suspending a process instance is typically performed to reduce load
on LiveCycle. That is, if a long-lived process is running
and requires input from an employee who is unavailable for a week,
the process can be suspended for that time period. When the employee
is available, the process can be put back into a running state.
Summary of steps
To suspend a process instance, perform the following tasks:
-
Include project files.
-
Create a ProcessManager Client API object.
-
Suspend the process instance.
-
Verify that the process instance is in a suspended state.
Include project files
Include necessary files into your development
project. If you are creating a client application by using Java,
include the necessary JAR files. If you are using web services,
make sure that you include the proxy files.
Create a ProcessManager Client API object
Before you can programmatically
search for process instances, you must create a
TaskManagerQueryService
object.
Suspend the process instance
To suspend a process, ensure that
it is a running state. If you attempt to suspend a process that
is not in a running state, you will create an exception. To successfully
suspend a process instance, you require the process invocation identifier that
can be obtained when invoking a long-lived process by using the
Invocation API. (See
Invoking Human-Centric Long-Lived Processes
.)
Suspend process instances using the Java API
Suspend a process instance by using the ProcessManager
API (Java):
-
Include project files
Include client JAR files,
such as adobe-workflow-client-sdk.jar, in your Java project’s class
path.
-
Create a ProcessManager Client API object
-
Suspend the process instance
Suspend the process instance
by invoking the
ProcessManager
object’s
suspendProcess
method
and passing a string value that specifies the process invocation
identifier value. This value can be obtained when invoking a process
by using the Invocation API.
Suspend process instances using the web service API
Suspend a process instance by using the ProcessManager
API (web service):
-
Include project files
-
Create a Microsoft
.NET client assembly that consumes the ProcessManager service WSDL.
To create a proxy object that lets you invoke its operations by using
Base64 encoding, specify this WSDL definition:
http://localhost:8080/soap/services/ProcessManager?WSDL
-
Reference the Microsoft .NET client assembly.
-
Create a ProcessManager Client API object
-
Using the Microsoft .NET client assembly, create a
ProcessManagerService
object
by invoking its default constructor.
-
Set the
ProcessManagerService
object’s
Credentials
data member
with a
System.Net.NetworkCredential
value.
-
Suspend the process instance
Suspend the process instance
by invoking the
ProcessManagerService
object’s
suspendProcess
method
and passing a string value that specifies the process invocation
identifier value. This value can be obtained when invoking a process
by using the Invocation API.
|
|
|