In diesem Beispiel wird eine Laufzeit-Task erstellt, die in ihrer Schnittstelle
nur einfache Java-Typen, z. B. ein Zeichenfolgeobjekt, verwendet.
Anlass und Zeitpunkt für die Ausführung dieser Task
Das Beispiel funktioniert nur im Kontext der aufrufenden Enterprise-Anwendung,
für die die Ressourcen geladen werden.
Erforderliche Schritte für diese Task
- Greifen Sie auf die ClientTaskFactory zu, und erstellen Sie eine Ressourcengruppe,
die die Definitionen des neuen Taskmodells enthalten soll.
ClientTaskFactory factory = ClientTaskFactory.newInstance();
ResourceSet resourceSet = factory.createResourceSet();
- Erstellen Sie die WSDL-Definition, und fügen Sie die Beschreibungen Ihrer Operationen hinzu.
// Erstellen der WSDL-Schnittstelle
Definition definition = factory.createWSDLDefinition
( resourceSet, new QName( "http://www.ibm.com/task/test/", "test" ) );
// Erstellen eines Porttyps
PortType portType = factory.createPortType( definition, "doItPT" );
// Erstellen einer Operation; die Eingabe- und Ausgabenachrichten sind vom Typ 'String':
// Eine Fehlernachricht wird nicht angegeben
Operation operation = factory.createOperation
( definition, portType, "doIt",
new QName( "http://www.w3.org/2001/XMLSchema", "string" ),
new QName( "http://www.w3.org/2001/XMLSchema", "string" ),
null );
- 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.
- Ä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);
- Erstellen Sie das Taskmodell, das alle Ressourcendefinitionen enthält.
TaskModel taskModel = ClientTaskFactory.createTaskModel( resourceSet );
- Prüfen Sie das Taskmodell, und korrigieren Sie sämtliche gefundenen Prüffehler.
ValidationProblem[] validationProblems = taskModel.validate();
- Erstellen Sie die Laufzeit-Taskinstanz bzw. die Laufzeit-Schablone.
Verwenden Sie die
Schnittstelle HumanTaskManagerService, um die Taskinstanz oder die Taskschablone zu erstellen. Da die Anwendung nur
einfache Java-Typen verwendet, müssen Sie keinen Anwendungsnamen angeben.
- Durch das folgende Snippet wird eine Taskinstanz erstellt:
task.createTask( taskModel, null, "HTM" );
- Durch das folgende Snippet wird eine Taskschablone erstellt:
task.createTaskTemplate( taskModel, null );
Ergebnis
Wenn eine Laufzeit-Taskinstanz erstellt wurde, kann sie nun gestartet werden.
Wenn eine Laufzeittaskschablone erstellt wurde, können Sie nun auf der Basis der
Schablone Taskinstanzen erstellen.