Questo scenario illustra il modo in cui creare un'istanza della maschera di attività che definisce un human task ed avvia l'istanza dell'attività.
- Opzionale: Elencare le maschere di attività per ricercare il nome o l'attività di origine da restituire.
Questo passo è facoltativo se già si conosce il nome dell'attività.
TaskTemplate[] taskTemplates = task.queryTaskTemplates
("TASK_TEMPL.KIND=TASK_TEMPL.KIND.KIND_HUMAN",
"TASK_TEMPL.NAME",
new Integer(50),
(TimeZone)null);
I risultati vengono ordinati per nome.
La query restituisce una matrice contenente le prime 50 maschere human task ordinate.
- Creare un messaggio di input di tipo appropriato.
TaskTemplate template = taskTemplates[0];
// creare un messaggio per l'attività selezionata
ClientObjectWrapper input = task.createInputMessage( template.getID());
DataObject myMessage = null ;
if ( input.getObject()!= null && input.getObject() instanceof DataObject )
{
myMessage = (DataObject)input.getObject();
//impostare le parti nel messaggio, ad esempio, un nome cliente
myMessage.setString("CustomerName", "Smith");
}
- Creare ed avviare human task; un gestore di risposte non è specificato in questo esempio.
L'esempio utilizza il metodo createAndStartTask per creare ed avviare l'attività.
TKIID tkiid = task.createAndStartTask( template.getName(),
template.getNamespace(),
input,
(ReplyHandlerWrapper)null);
Gli elementi di lavoro vengono creati per gli utenti che effettuano operazioni con l'istanza dell'attività. Ad esempio, un proprietario potenziale può richiedere la nuova istanza di attività.
- Richiedere l'istanza dell'attività.
ClientObjectWrapper input2 = task.claim(tkiid);
DataObject taskInput = null ;
if ( input2.getObject()!= null && input2.getObject() instanceof DataObject )
{
taskInput = (DataObject)input2.getObject();
// leggere i valori
...
}
Una volta richiesta l'istanza dell'attività, viene restituito il messaggio di input dell'attività stessa.