activities
latest
false
Ausführen statischer und Objektmethoden
Wichtig :
Bitte beachten Sie, dass dieser Inhalt teilweise mithilfe von maschineller Übersetzung lokalisiert wurde.
Entwickleraktivitäten
Last updated 22. Okt. 2024
Ausführen statischer und Objektmethoden
Um zu veranschaulichen, wie man mit diesem Aktivitätspaket arbeitet, haben wir einen Automationsprozess erstellt, der seine Fähigkeiten zur Ausführung sowohl statischer als auch Objektmethoden demonstriert. Dieser Prozess ist in zwei Teile aufgeteilt:
- Im ersten Teil wird eine Java-Bibliothek mit der Aktivität Java Scope initialisiert, dann wird eine
.jar
-Datei mit dem Java-Code mit Load Jargeladen. Eine statischegetArrayInt
-Methode wird ausgeführt, indem die Aktivität Invoke Java Method verwendet wird, ein Array von Integern zurückgegeben und in einem benutzerdefiniertenJavaObject
-Datentyp gespeichert wird. Anschließend wird mithilfe der Aktivität „ Convert Java Object “JavaObject
in ein .NET-Array von Integern konvertiert – eineInt32[]
-Variable. Jeder darin enthaltene Wert wird dann über eine For Each -Aktivität in das Ausgabe -Panel geschrieben. Dies zeigt, wie einfach es ist, zwischen bestimmten Java- und .NET-Datentypen zu wechseln und deren Werte dann nach Belieben zu ändern. - Im zweiten Teil wird innerhalb des zuvor genannten Java-Bereichs (Java Scope ) eine Aktivität Java-Objekt erstellen ( Create Java Object ) verwendet, um eine weitere
JavaObject
zu erstellen, die eine KlasseCoordinate
enthält. Durch Verwendung einer anderen Aktivität des Typs Invoke Java Method wird die MethodegetCoordinateSum
ausgeführt. Objektmethoden können ähnlich wie statische Methoden aufgerufen werden, aber anstelle von TargetType wird diesmal die Eigenschaft TargetObject verwendet, da wir jetzt eineJavaObject
-Variable anstelle eines Arrays von Integern verwenden. Die Methode gibt ihre Werte in einem drittenJavaObject
zurück und wird mit einer anderen Aktivität Convert Java Object wieder in eine .NETDouble
-Variable konvertiert. Der letzte Schritt besteht darin, ein Meldungsfenster anzuzeigen, das den Wert in derDouble
-Variablen enthält.
So kann die Demo aufgebaut werden:
- Studio öffnen und einen neuen Prozess starten.
- Ziehen Sie eine Java-Scope- Aktivität in den Workflow-Designer. Da in der Eigenschaft Java-Bibliothekspfad kein Pfad angegeben ist, verwendet der Scope standardmäßig die Umgebungsvariable PATH , um die Java-Bibliothek zu initialisieren.
- Ziehen Sie eine Aktivität Jar laden (Load Jar) in das Panel Designer (Designer).
- Ordnen Sie den Pfad im Eigenschaftsfeld Jar-Pfad (JarPath) der Datei
Objects.jar
zu. - Ziehen Sie eine Aktivität Invoke Java Method nach Load Jar.
-
Geben Sie den Namen der Methode in die Eigenschaft Name der Methode (MethodName) ein und tragen Sie dann in das Feld Zieltyp (TargetType) den Namen des Java-Pakets ein und die Klasse, die Sie verwenden möchten.
Hinweis: Die Eigenschaft TargetType muss im Formatpackage.name.ClassName
angegeben werden. Wenn wir beispielsweise ein Paket namenscom.package.example
haben, das die KlasseUser.Profile
enthält, und wir es verwenden möchten, sollte die TargetType- Eigenschaft wiecom.package.example.User.Profile
aussehen. - Erstellen Sie eine Variable
JavaObject
mit dem NamenJavaObjectResultStaticMethod
zum Speichern der von der Aktivität Java-Methode aufrufen (Invoke Java Method) zurückgegebenen Werte und stellen Sie diese in das Eigenschaftsfeld Ergebnis (Result). - Fügen Sie dem Workflow eine Variable zum Konvertieren von Java-Objekten hinzu und platzieren Sie die Variable
JavaObjectResultStaticMethod
im Eigenschaftsfeld JavaObject . - Wählen Sie im Eigenschaftsfeld TypeArgument den Variablentyp
System.Int32[]
aus. - Erstellen Sie eine
Int32[]
-Variable mit dem NamenResultStaticMethod
und fügen Sie diese im Eigenschaftsfeld Ergebnis (Result) hinzu. - Ziehen Sie eine Aktivität Für Jeden (For Each) in das Panel Designer (Designer).
- Legen Sie die TypeArgument- Eigenschaft auf
Int32
fest, und weisen Sie die VariableResultStaticMethod
dem Eigenschaftsfeld Werte zu. Auf diese Weise können Sie jede ganze Zahl Ihres Arrays durchgehen. - Ziehen Sie eine „Write Line“ -Aktivität in den Textkörper der „ For Each “-Aktivität und weisen Sie
value.ToString
in deren Text -Eigenschaft zu. Auf diese Weise können Sie zur Laufzeit alle Werte in die VariableResultStaticMethod
im Ausgabe -Panel schreiben.
Ihr Workflow sollte folgendermaßen aussehen:
- Fügen Sie dem Workflow unter der im vorigen Beispiel verwendeten Aktivität Java-Bereich (Java Scope) eine Aktivität Java-Objekt erstellen (Create Java Object) hinzu.
- Verwenden Sie den Namen des Java-Pakets und die Klasse
Coordinate
, um die Eigenschaft TargetType (uipath.java.test.Coordinate
) auszufüllen. - Erstellen Sie eine Variable im Eigenschaftsfeld Ergebnis , indem Sie die Tastenkombination Strg + K verwenden, und nennen Sie sie
JavaObject
. - Ziehen Sie eine Aktivität Java-Methode aufrufen (Invoke Java Method) in das Panel Designer (Designer).
- Um die Summe der Daten abzurufen, die von der Klasse
Coordinate
eingegeben wurde, schreiben Sie die MethodegetCoordinateSum
in die Eigenschaft Name der Methode (MethodName). - Erstellen Sie eine Variable im Eigenschaftsfeld Ergebnis , indem Sie die Tastenkombination Strg + K verwenden, und nennen Sie sie
JavaObjectResultObjectMethod
. - Fügen Sie die Variable
JavaObject
zum Feld Zielobjekt (TargetObject) hinzu. - Fügen Sie eine Aktivität Java-Methode konvertieren (Convert Java Method) zu dem Workflow hinzu.
- Fügen Sie die Variable
JavaObjectResultObjectMethod
zum Feld Java-Objekt (JavaObject) hinzu. - Wählen Sie in der Dropdownliste TypeArgument -Eigenschaft den Datentyp
System.Double
aus. - Erstellen Sie eine neue Variable
Double
mit dem NamenObjectMethodResultValue
und fügen Sie diese im Eigenschaftsfeld Ergebnis (Result) hinzu. - Ziehen Sie ein Meldungsfenster in das Panel Designer (Designer).
- Weisen Sie der Text -Eigenschaft
ObjectMethodResultValue.ToString
zu, um die Werte in der VariablenDouble
anzuzeigen. Zur Laufzeit wird dieJavaObject
erstellt, die dieCoordinate
-Klasse enthält, dann wird diegetCoordinateSum
-Methode ausgeführt und ihre Ergebnisse werden in einer anderenJavaObject
zurückgegeben. Die Ergebnisse werden dann in eine .NETDouble
-Variable konvertiert, die dann in einer MessageBoxangezeigt wird.
Der endgültige Workflow sollte folgendermaßen aussehen: