Das Notes Forum
Lotus Notes / Domino Sonstiges => Java und .NET mit Notes/Domino => Thema gestartet von: gfunkus am 06.08.04 - 09:27:57
-
Hi,
Wie kann man nochmal in Java Agenten LS Routinen aufrufen?
Das geht doch irgendwie oder?
-
Das steht in der Designer Hilfe unter Java/CORBA...
Du kann aber kein LotusScript aufrufen, sondern die Methoden/Properties, die Dir durch
import lotus.domino.*;
zur Verfügung stehen.
Beispiel:
This is an application that makes local calls and extends the NotesThread class:
import lotus.domino.*;
public class platform1 extends NotesThread
{
public static void main(String argv[])
{
platform1 t = new platform1();
t.start();
}
public void runNotes()
{
try
{
Session s = NotesFactory.createSession();
// To bypass Readers fields restrictions
// Session s = NotesFactory.createSessionWithFullAccess();
String p = s.getPlatform();
System.out.println("Platform = " + p);
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
Andreas
-
Für den umgekehrten Weg gibt es Java2LS-Bridge.
Dh. du bindest bestimmte in Java geschriebene Funktionalität in LotusScript ein.
Ich wäre bei solchen Dingen aber sehr vorsichtig. Z.B. meldete Manfred Dillmann Memory Leak Probleme, wo wir nicht wissen, ob die auf Java oder Java2LS-Bridge zurückzuführen sind.
Es gibt JavaToCom bridges aus denen man vermutlich existierende LS-Funktionen über 2 Brücken aufrufen kann: (javaToComBridge ComToLotusScript) aufrufen kann.
Nur führen solche Sachen aus meiner Erfahrung zu Problemen in 4 Bereichen:
- Stabilität (bugs in der Java2Com bridge)
- schwer abzuschätzende Projektrisiken (Workarounds suchen für Einschränkungen durch die Komponente, bugs in der Komponente)
- Performance
- allgemeine Übersichtlichkeit der Anwendung.
Ich würd darüber nachdenken, die LotusScript Funktionen in Java umzuschreiben.
Gruß Axel
-
Kann man den allgemein sagen, das JavaAgenten oder Routinen performanter sind als LS?
-
Kann man den allgemein sagen, das JavaAgenten oder Routinen performanter sind als LS?
Nein. Für bestimmte Aufgaben vielleicht.
Ralf sieht das vielleicht anders.
Für mich ist die Beziehung zwischen Java/J2EE/stuff zu Lotus-Domino weitaus eher substitutiv als komplementär.
Axel
-
Hm interessante Frage das mit der Performance. Ich denke, dass Java Code schon performanter sein kann als Lotus script, da gerade in den neueren Versionen von Java, sehr viel in punkto Performance verbessert wurde. Was ich aber definitiv auschliessen kann, ist das sich Aufrufe an die Notes API also die sicher über import einbinden lassen schneller sind. Denn die Objekte die hinter den Java Wrapper Klassen liegen sind ident mit der C++API und auf die wird auch von Lotus script zugegriffen. Ich mache es in der Regel so:
Wenn ein Agent nur Zugriff auf Lotus Notes benötigt, wird er in Lotus script oder Formelsprache gemacht.
Wenn ein Agent auch auf andere Systeme z.B. ERP, Webzugriffe... zugreifen muß verwende ich Javaagenten. Wobei ich den Code für die Javaagenten meistens zuerst als Standalone Java Programm entwickle um eine vernünftige IDE nutzen zu können. Der Designer ist in punkto Java Unterstützung eher lächerlich.
Grüße
Ralf
-
Welche IDE nutzt du? Und womit Planst du deine Anwendungen?
UML?
Gfunkus
-
Ich benutzte früher Netbeans und bin jetzt auf WDSC for Iseries umgestiegen. Bin im großen und ganzen sehr zufrieden damit, obowhl mir ein paar Features von Netbeans schon sehr abgehen. UML verwende ich noch nicht.
Grüße
Ralf
-
UML verwende ich noch nicht.
Die Suche nach einem UML-Tool für UML-Einsteiger ist wirklich schwieriger als man denkt.
Teilweise sind die Dinger der totale Overkill mit 120 Spezial Bugs (meine Meinung über Rational Rose 2002 Enterprise Edition).
Was ich jetzt ziemlich gut finde ist dieser kleine, wendige Japaner (openSource):
http://objectclub.esm.co.jp/Jude/ (http://objectclub.esm.co.jp/Jude/)
Er hat weitgehend alle Diagramme(features) die ich brauche und das arbeiten geht bei mir 3 mal schneller als mit Rational Rose.
Man kann Diagramme als jpg oder png exportieren.
Jeder, der ein bischen mit UML rumspielen will, empfehle ich dieses Tool.
Wobei mir grade einfällt, dass es für Swing Probleme ein Problem darstellen könnte, dass die Swing Klassen nicht importiert werden (nur java.lang.* und java.util.* sind da. Glaub, dass dies grade für Swing-Projekte möglicherweise ein größeres Problem darstellt als für Business Layer, Datenbank Programmierung oder Web-Geschichten.
Gruß Axel
Gruß Axel
-
Was nur java.lang und java.util ?
Hm da verwende ich aber doch etwas mehr von der Java Klassenbibliothek?
Grüße
Ralf
-
Was nur java.lang und java.util ?
Hm da verwende ich aber doch etwas mehr von der Java Klassenbibliothek?
Grüße
Ralf
Ich manchmal auch ;D
Auf der anderen Seite ist es aber zumindest für mich nicht sooo wichtig, weil die Interaktionen mit den spezielleren Klassen meist innerhalb der Methoden stattfindet. Ich habe nicht unbedingt oft Parameter oder returns, die nicht Primitives, eigene Klassen oder aus java.lang, java.util sind.
Bei Rational wird bei j.e.d.e.m. Start immer alles reingeladen und das dauert...