Ich versuche derzeit, mittels NetBeans einen Agenten für Lotus Notes zu entwickeln. Hierzu habe ich eine klasse Anleitung im Netz gefunden. (Hier geht's zur besagten Anleitung (http://dev.kanngard.net/Permalinks/ID_20020203120711.html)) Diese habe ich Punkt für Punkt abgearbeitet und nun scheint soweit auch fast alles zu funktionieren. Aber leider eben auch nur fast.
Mein Problem sieht so aus, dass ich nach dem Starten des Agenten (aus NetBeans heraus) im Output Fenster von NetBeans folgende Fehlermeldung erhalte:
init:
deps-jar:
Compiling 1 source file to Z:\Java\DominoAgentTest\build\classes
compile:
run:
Running agent...
No AgentContext document found for agent
<agent=AgentRunner Test>
<database=AgentRunnerTests.nsf>
<server=local>
BUILD SUCCESSFUL (total time: 1 second)
Der AgentContext wurde jedoch korrekt in der Datenbank AgentRunner.nsf angelegt. (Siehe bild)
(http://img365.imageshack.us/img365/8657/agentrunnertestsen2.th.jpg) (http://img365.imageshack.us/my.php?image=agentrunnertestsen2.jpg)
Was könnte ich falsch gemacht haben ?
Ich verwende Lotus Notes R5.0.11 und NetBeans 5.0.
MfG
Leon
So, das Problem habe ich nun zwar lösen können, stehe nun allerdings gleich vor dem nächsten.
Die Lösung des Problems von vorhin war schlicht und einfach folgendes:
Quelltext
package de.atnotes;
import lotus.domino.*;
public class AgentRunnerTest extends DebugAgentBase
{
public static void main(String[] args) throws Exception
{
System.out.println("Entered main.");
AgentRunner.main( new String[] {
"AgentRunnerTest",
"c:\\Programme\\Notes\\Data\\AgentRunnerTests.nsf",
"local" } );
}
public void NotesMain()
{
System.out.println("Entered NotesMain.");
}
}
Anstelle von "AgentRunnerTests.nsf" musste ich den absoluten Pfad angeben, also "c:\\Programme\\Notes\\Data\\AgentRunnerTests.nsf".
Nun findet er zwar den AgentContext und er wird sogar vollständig und korrekt ausgeführt, aber dennoch werden nach Beendigung folgende Fehler im Output-Fenster von NetBeans angezeigt:
Entered main.
Entered NotesMain.
lotus.domino.NotesException
at lotus.domino.local.Session.NcreateDateTime(Native Method)
at lotus.domino.local.Session.createDateTime(Session.java:843)
at lotus.domino.local.DebugSession.stampAgentContextDoc(DebugSession.java:224)
at lotus.domino.DebugAgentBase.termAgentRunner(DebugAgentBase.java:49)
at lotus.domino.AgentRunner.runAgent(AgentRunner.java:142)
at lotus.domino.AgentRunner.runNotes(AgentRunner.java:54)
at lotus.domino.NotesThread.run(NotesThread.java:203)
Wenn ich jedoch meine Klasse anstelle von DebugAgentBase um AgentBase erweitere, das Projekt kompiliere, die erzeugte .class Datei im Domino Designer in meinen Agenten importiere und den Agenten schließlich unter Notes ausführe, werden keinerlei Fehler in der Java Debug-Konsole von Notes angezeigt. Die Fehler bekomme ich nur in meiner Entwicklerumgebung wenn ich die Klasse um DebugAgentBase erweitere. Im fertigen Agenten unter Notes bekomme ich diese Fehler nicht.
MfG
Leon