Hallo zusammen,
ich arbeite gerade an der Einbindung von iText-Bibliotheken, um PDFs im Backend erstellen zu können. Das funktioniert erst einmal ganz gut. Was mir aber Sorgen macht, ist der Auslöser, um die Java-Agenten im Frontend zu starten. Ich möchte über einen Button (Dokument und Ansicht) den Java-Agenten starten. Der Buttoncode ist simpel und bei LS-Agenten funktionabel:
Sub Click(Source As Button)
Dim session As New NotesSession
Dim db As NotesDatabase
Dim agent As NotesAgent
' Aktuelle Datenbank oder eine andere Datenbank auf dem Server referenzieren
Set db = session.CurrentDatabase ' Falls der Agent in einer anderen DB ist: Set db = session.GetDatabase("ServerName", "Datenbank.nsf")
' Agent mit Namen aufrufen
Set agent = db.GetAgent("agiText") ' Name des Agenten anpassen
' Agent auf dem Server starten
Dim result As Integer
result = agent.RunOnServer()
End Sub
Der Agent agiText ist als zeitgesteuert (nie) konfiguriert. Er soll eine Textdatei in einen Ordner legen. Wenn ich ihn über das Menü Aktionen ausführen, macht er, was er soll. Hier der Vollständigkeit halber der das Java des Agenten:
import java.io.FileWriter;
import java.io.PrintWriter;
import lotus.domino.AgentBase;
public class JavaAgent extends AgentBase {
public void NotesMain() {
try {
String filePath = "C:\\Temp\\test.txt";
FileWriter fw = new FileWriter(filePath);
PrintWriter pw = new PrintWriter(fw);
pw.println("Java-Agent wurde erfolgreich ausgeführt!");
pw.close();
fw.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
Wenn ich nun also den Agenten über den Button in der Ansicht starten will, passiert gar nichts. Der Buttoncode läuft bis zum Ende ohne Fehlermeldung durch, der Agent wird aber nicht ausgeführt. Noch interessant: Im Reiter "Sicherheit" des Agenten kann ich nichts auswählen. Das Optionsfeld ist nicht anklickbar. Könnte hier das Problem liegen?