Creazione di attività di runtime che utilizzano un'interfaccia dall'applicazione chiamante

In questo esempio viene creata un'attività di runtime che utilizza un'interfaccia che è parte dell'applicazione chiamante. Ad esempio, l'attività di runtime viene creata in un frammento Java di un processo aziendale ed utilizza un'interfaccia dell'applicazione del processo.

Perché e quando effettuare questa attività

L'esempio viene eseguito solo all'interno del contesto dell'applicazione aziendale chiamante, per cui vengono caricate le risorse.

Procedura di questa attività

  1. Accedere a ClientTaskFactory, quindi creare una serie di risorse che contenga le definizioni del nuovo modello di attività.
    ClientTaskFactory factory = ClientTaskFactory.newInstance(); 
    
    // specificare il caricatore di classe del contesto, in modo che vengano trovate
    le seguenti risorse
    ResourceSet resourceSet = factory.createResourceSet
                  ( Thread.currentThread().getContextClassLoader() );
  2. Accedere alla definizione WSDL e alle descrizioni delle operazioni.

    Specificare il percorso contenente il file JAR del pacchetto.

    Definition definition = factory.loadWSDLDefinition( resourceSet, 
                              "com/ibm/workflow/metaflow/interface.wsdl" ); 
                          PortType portType = definition.getPortType( 
                          new QName( definition.getTargetNamespace(), "doItPT" ) );
    Operation operation = portType.getOperation("doIt", (String)null, (String)null);
  3. Creare il modello EMF del nuovo human task.

    Se si sta creando un'istanza di attività, non è richiesta una data Valido da (UTCDate).

    TTask humanTask = factory.createTTask( resourceSet, 
                                           TTaskKinds.HTASK_LITERAL, 
                                           "TestTask", 
                                           new UTCDate( "2005-01-01T00:00:00" ), 
                                           "http://www.ibm.com/task/test/", 
                                           portType, 
                                           operation );

    Questo passo inizializza le proprietà del modello di attività con i valori predefiniti.

  4. Modificare le proprietà del modello human task.
    // utilizzare i metodi dal pacchetto com.ibm.wbit.tel, ad esempio,
    humanTask.setBusinessRelevance( TBoolean, YES_LITERAL );
    
    // richiamare la produzione attività per creare o modificare gli elementi
    dell'attività compositi
    TaskFactory taskFactory = factory.getTaskFactory();
    
    // specificare le impostazioni di escalation
    TVerb verb = taskFactory.createTVerb();
    verb.setName("John");
    
    // creare escalationReceiver, quindi aggiungere il verbo
    TEscalationReceiver escalationReceiver = 
                        taskFactory.createTEscalationReceiver();
    escalationReceiver.setVerb(verb);
    
    // creare l'escalation, quindi aggiungere il destinatario dell'escalation 
    TEscalation escalation = taskFactory.createTEscalation();
    escalation.setEscalationReceiver(escalationReceiver);
  5. Creare il modello dell'attività che contiene tutte le definizioni della risorsa.
    TaskModel taskModel = ClientTaskFactory.createTaskModel( resourceSet );
  6. Convalidare il modello dell'attività, quindi correggere eventuali problemi di convalida che vengono trovati.
    ValidationProblem[] validationProblems = taskModel.validate();
  7. Creare l'istanza o la maschera di attività di runtime.
    Utilizzare l'interfaccia HumanTaskManagerService per creare l'istanza o la maschera dell'attività. È necessario fornire un nome dell'applicazione contenente le definizioni del tipo di dati, in modo che sia possibile accedervi.
    • Il frammento di seguito riportato crea un'istanza dell'attività:
      task.createTask( taskModel, "WorkflowApplication", "HTM" );
    • Il frammento di seguito riportato crea una maschera dell'attività:
      task.createTaskTemplate( taskModel, "WorkflowApplication" );

Risultato

Se viene creata un'istanza di attività di runtime, ora può essere avviata. Se viene creata una maschera di attività di runtime, ora è possibile creare istanze di attività dalla maschera.


(c) Copyright IBM Corporation 2005, 2006.
This information center is powered by Eclipse technology (http://www.eclipse.org)