Laufzeittasks erstellen, die eine Schnittstelle der aufrufenden Anwendung verwenden

Bei diesem Beispiel wird eine Laufzeit-Task erstellt, die eine Schnittstelle verwendet, die ein Teil der aufrufenden Anwendung ist. Die Laufzeit-Task wird in einem Java-Snippet eines Business-Prozesses erstellt und verwendet eine Schnittstelle der Prozessanwendung.

Das Beispiel funktioniert nur im Kontext der aufrufenden Enterprise-Anwendung, für die die Ressourcen geladen werden.
  1. Greifen Sie auf die ClientTaskFactory zu, und erstellen Sie eine Ressourcengruppe, die die Definitionen des neuen Taskmodells enthalten soll.
    ClientTaskFactory factory = ClientTaskFactory.newInstance(); 
    // Angeben des Ladeprogramms für Kontextklassen, damit nach den folgenden 
    Ressourcen gesucht wird
    ResourceSet resourceSet = factory.createResourceSet
                  ( Thread.currentThread().getContextClassLoader() );
  2. Greifen Sie auf die WSDL-Definition und die Beschreibungen Ihrer Operationen zu.

    Geben Sie den Pfad in der übergeordneten JAR-Paketdatei an.

    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", null, null );
  3. Erstellen Sie das EMF-Modell Ihrer neuen Benutzertask.

    Wenn Sie eine Taskinstanz erstellen, ist kein Gültigkeitsstartdatum (UTCDate) erforderlich.

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

    Durch diesen Schritt werden die Merkmale des neuen Taskmodells mit den Standardwerten initialisiert.

  4. Ändern Sie die Merkmale Ihres Benutzertaskmodells.
    // Verwenden der Methoden aus dem Paket com.ibm.wbit.tel, z. B.:
    humanTask.setBusinessRelevance( TBoolean, YES_LITERAL );
    
    // Abrufen der Task-Factory zum Erstellen oder Ändern von zusammengesetzten 
    Taskelementen TaskFactory taskFactory = factory.getTaskFactory();
    
    // Angeben der Eskalationseinstellungen
    TVerb verb = taskFactory.createTVerb();
    verb.setName("John");
    
    // Erstellen des Eskalationsempfängers und Hinzufügen eines Verbs
    TEscalationReceiver escalationReceiver = 
                        taskFactory.createTEscalationReceiver();
    escalationReceiver.setVerb(verb);
    
    // Erstellen einer Eskalation und Hinzufügen eines Eskalationsempfängers
    TEscalation escalation = taskFactory.createTEscalation();
    escalation.setEscalationReceiver(escalationReceiver);
  5. Erstellen Sie das Taskmodell, das alle Ressourcendefinitionen enthält.
    TaskModel taskModel = ClientTaskFactory.createTaskModel( resourceSet );
  6. Prüfen Sie das Taskmodell, und korrigieren Sie sämtliche gefundenen Prüffehler.
    ValidationProblem[] validationProblems = taskModel.validate();
  7. Erstellen Sie die Laufzeit-Taskinstanz bzw. die Laufzeit-Schablone.
    Verwenden Sie die Schnittstelle HumanTaskManagerService, um die Taskin- stanz oder die Taskschablone zu erstellen. Sie müssen einen Anwendungsnamen angeben, der die Datentypdefinitionen enthält, damit ein Zugriff möglich ist.
    • Durch das folgende Snippet wird eine Taskinstanz erstellt:
      task.createTask( taskModel, "WorkflowApplication", "HTM" );
    • Durch das folgende Snippet wird eine Taskschablone erstellt:
      task.createTaskTemplate( taskModel, "WorkflowApplication" );

Wenn eine Laufzeit-Taskinstanz erstellt wurde, kann sie nun gestartet werden. Wenn eine Laufzeit-Schablone erstellt wurde, können Sie nun auf der Basis der Schablone Taskinstanzen erstellen.


Terms of use |

Last updated: Wed Apr 05 14:39:15 2006

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