Lotus Notes / Domino Sonstiges > Java und .NET mit Notes/Domino
Java mit Corba-Zugriff
magic_halli:
Hi,
ich habe ein "ganz normales" Javaprogramm (keinen Agent). Hieraus möchte ich ein Item an ein Notes-Maildokumente anhängen und füllen.
Dazu müsste ich dann wohl mittels CORBA eine Session zu Notes aufbauen und das Dokument manipulieren?!
Außerdem muß der DIIOP-Task auf dem Server laufen und ich benötige das NSCO.jar?!
1. Ich finde das NSCO.jar File nicht - wo liegt das für gewöhnlich? --> EDIT: 1. ist geklärt.
2. Muß das NSCO.jar in den Path oder Classpath rein?
3. Wie starte ich den DIIOP-Task - habe in der Hilfe nichts passendes gefunden!?
Danke und Gruß
PS: Dieser Weg, aus Java per CORBA auf Notes zugreifen, gefällt mir jedoch nicht sonderlich, da ich gelesen habe, das dies relativ inperformant sein soll?!
Ralf_M_Petter:
zu 2. in den Classpath.
zu 3. Load DIIOP
DIIOP ist laut meinen Tests ca. 2-3 mal langsamer als Zugriff über NRPC und deshalb verwende ich es nicht. Für kleine Sachen würde ich aber sowieso den Umweg über Webservices gehen. Also auf dem Dominoserver ein eigenes kleines API mit der Webserviceproviderfunktion coden und auf dem Clientprogramm dann den Webserviceconsumer programmieren. Das sollte am stabilsten und robustesten funktionieren.
Grüße
Ralf
magic_halli:
Danke... ich überdenke mir, glaub ich, nochmal den Ansatz über Corba. ;)
Gruß
magic_halli:
Mh, ich glaube leider, irgendwie scheine ich um CORBA nicht herum zu kommen?!
Szenario:
Per Button wird in Notes ein LS-Agent gestartet. Dieser ermittelt bestimmte Dokumente-Values und ruft eine Java-Bibliothek auf (kein Java-Agent!; eigenständiges Java-Programm). An das Java-Programm werden außerdem noch beim Aufruf, mittels LS2J, die vorher ermittelten Dokument-Values übergeben.
Nun führt mein Java-Programm seine Operationen aus und ich erhalte u.a. eine "PostNr" während der Abarbeitung.
Diese "PostNr" will ich nun wieder an das Notes-Dokument als neues Item anhängen, von welchem ich ursprünglich per Buttonklick die Abarbeitungskette (Button-->LS-Agent-->LS2J-->Aufruf Java-Programm) gestartet habe!
Ich sehe irgendwie keine andere Möglichkeit, als über Corba meine "PostNr" (im Java-Programm berechnet) an das Dokument zurückzuspeichern!?!? :-:
Oder würdet ihr für mein Szenario einen anderen/performanteren Weg einschlagen?
Danke.
PS: Ich habe schon überlegt/versucht, im LS-Agent der mein JavaProgramm startet, nach dem Aufruf des Java-Programms eine Getter-Methode (getPostNr()) aus dem Java-Programm separat nochmal aufzurufen. Dort müsste mir eigentlich die PostNr ausgelesen werden. Doch der LS-Agent arbeitet ja seinen Code nach dem Aufruf des Java-Programms stur weiter ab (verständlicherweise). Somit läuft mein Java-Programm noch und berechnet mir ja erst die PostNr, währen der LS-Agent bereits die getPostNr()-Methode abruft und dort natürlich null erhält. Also fällt dieser Weg schonmal aus?! :(
Ralf_M_Petter:
Irgendetwas stimmt hier nicht Wie kannst du an ein externes Programm mit LS2j Daten übergeben. Das ist meiner Meinung nach nicht möglich. LS2j kann nur von ihm selbst instantierte Objekte verwenden die dann nicht in einer externen JVM sondern in der Notes JVM laufen. Aber soweit ich weiß verwendest du doch Notes 8. Also warum das ganze nicht mit Notes 8 Technologien lösen. Da geht das alles doch wesentlich eleganter.
Grüße
Ralf
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln