Vorheriges Thema: AusgabeparameterNächstes Thema: Ressource für die Ausführung des Operators "Java aufrufen" - Beispiel


Java-Beispiel

Folgendes Beispiel befindet sich im Beispielabschnitt des Feldes "Erforderliche Hauptmethode".

/*
Die Hauptmethode wird verwendet, um Objekte und Methoden aufzurufen, die im Java-SDK oder in externen JAR-Dateien definiert sind.
Die Hauptmethode besteht aus normalen Java-Anweisungen und Ausdrücken.
Sie können auch:
- Definieren Sie Ihre eigenen Methoden, und verwenden Sie sie in der Hauptmethode
- Übergeben Sie Eingabeparameter an die Hauptmethode
- Speichern Sie Ausgabevariablen im Datensatz des Operators am Ende der Ausführung der Hauptmethode
- Verwenden Sie ein Protokollierungsobjekt in der Hauptmethode

Normalerweise würden Sie alle Klassendefinitionen in externen JAR-Dateien abschließen und sie in den externen JAR-Dateipfaden des Operators auflisten, dann initialisieren und diese Objekte in der Hauptmethode verwenden.
*/

/*
Das untere Beispiel zeigt, wie ein MyAccount-Objekt initialisiert und verwendet wird, das in einer externen JAR-Datei definiert ist.
Operatorkonfiguration:
1. Geben Sie den Pfad an: 
"Invoke_Java_Op_Example_Jars/MyAccount.jar" in der Liste des Operators der externen JAR-Dateipfade. "MyAccount.jar" enthält die Klasse "ca.tech.pam.MyAccount", die im unteren Code verwendet wird. Während der Installation von CA Process Automation wird "MyAccount.jar" als Anwenderressource hochgeladen.
2. Geben Sie eine Datensatzvariable des Typs "Datum" als erstes Objekt in der Liste der Eingabeparameter des Operators an. 
    Auf diesen Parameter kann in der Hauptmethode als "args[0]" zugegriffen werden.
3. Geben Sie eine Datensatzvariable des Typs "Ganzzahl" und den Wert 100 als zweites Objekt in der Liste der Eingabeparameter des Operators an. 
    Auf diesen Parameter kann in der Hauptmethode als "args[1]" zugegriffen werden.
4. Geben Sie die Variablennamen "acct" (ohne Anführungszeichen) als erstes Objekt in der Liste der Ausgabevariablen-Namen des Operators an.
    "acct" wird in der Hauptmethode als "MyAccount"-Objekt erstellt, sodass am Ende der Ausführung des Operators "acct" im Datensatz des Operators als Variable des Typs "JavaObject" gespeichert wird.
5. Konfigurieren Sie den Operator für die Verwendung einer Protokollierung, und legen Sie "Pfad der Protokolldatei" auf einen lokalen Dateipfad, "Protokollebene" auf "Info", "An Protokolldatei anhängen?" auf "falsch" und "Daten ohne Protokollierungsinformationen ins Protokoll schreiben?" auf "wahr" fest.
*/

// Importieren Sie die Klassen, die Sie verwenden wollen
import ca.tech.pam.MyAccount;

// Hinweis\: StringBuffer und Datum (unten verwendet) brauchen nicht importiert zu werden, da sie Teil der
// automatisch importierten Pakete sind. (Die vollständige Liste dieser Pakete ist in der Dokumentation enthalten.)
// import java.lang.StringBuffer;
// import java.util.Date;

// Initialisieren Sie das Objekt 'MyAccount'
// Beachten Sie, dass der MyAccount-Konstruktor in der externen JAR-Datei definiert ist als\:
// public MyAccount(Date date, int balance)
MyAccount acct = new MyAccount(args[0], args[1]);

// Verwenden Sie die öffentlichen Methoden des Objekts 'MyAccount'.
// Note that addFunds is defined in the external jar as:
// public int addFunds (int amnt)
acct.addFunds(34);

// Beachten Sie, dass subFunds in der externen JAR-Datei definiert ist als\: 
// public int subFunds (int amnt)
acct.subFunds(10);

// Definieren Sie Ihre eigene Methode
String getStatement(MyAccount acc) {
    StringBuffer strBuff = new StringBuffer("Account Balance: " + acc.getBalance());
    Date dt = new Date(System.currentTimeMillis());
    strBuff.append(" on date: " + dt);
    return strBuff.toString();
}

// Verwenden Sie die von Ihnen definierte Methode und drucken Sie die Aussage unter Verwendung des Objekts 'logger' aus,
// das Sie auf der Seite 'Logger' des Operators festlegen.
logger.info(getStatement(acct));

// Am Ende der Ausführung des Operators\:
// acct wird im Datensatz des Operators als Variable des Typs 'JavaObject' gespeichert.
// Die Logger-Protokolldatei enthält folgende Meldung\:
// 	Account Balance: 124 on date: Thu Aug 22 11:27:29 EDT 2013
//	(Die Meldung gibt das korrekte Datum und die Uhrzeit der Ausführung wieder).