Autor Thema: Externes Prog(Java) aufrufen  (Gelesen 11621 mal)

Offline Ralf_M_Petter

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.879
  • Geschlecht: Männlich
  • Jeder ist seines eigenen Glückes Schmied
    • Ralf's Blog
Re: Externes Prog(Java) aufrufen
« Antwort #20 am: 09.12.05 - 12:38:38 »
Jor nur noch ein Hinweis, du weisst schon, dass du Javaclassen auch innerhalb von Notes laufen lassen kannst. Will heissen, dass du nicht ein externes Java aufrufen musst, sondern dass deine Klasse auch innerhalb eines Agenten laufen kann. Das ist nur dann problematisch wenn dir die von Notes verwendete JDK (unter Notes 6 JDK 1.3.1) zu alt ist. Sonst läuft das ziemlich gut.

Grüße

Ralf
Jede Menge Tipps und Tricks zu IT Themen findet Ihr auf meinem Blog  Everything about IT  Eine wahre Schatzkiste sind aber sicher die Beiträge zu meinem Lieblingsthema Tipps und Tricks zu IBM Notes/Domino Schaut doch einfach mal rein.

Offline flaite

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.966
    • mein del.icio.us
Re: Externes Prog(Java) aufrufen
« Antwort #21 am: 09.12.05 - 12:39:45 »
@Ralf:
Ich wollte damit sagen, dass man keine IDE braucht um ein jar zu packen. Dafür gibts ein command-line Tool im jsdk.

Bzgl. RMI: Man kann das Java-Programm in einen RMI Server einbinden und von Notes stubmässig damit kommunizieren.
Vorteile sind:
- man bekommt einfacher Rückgabewerte und v.a. auch error-Meldungen aus dem externen Programm zurück.

RMI ist nicht so schwierig, wenn man das einmal gemacht hat.
So hab ich mal vor Jahren ein externes Java-Programm in Notes eingebunden.

Für eine gute Idee halte ich nach wie vor den Classpath in der bat-Datei zu setzen.

Gruß Axel
Ich stimm nicht mit allen überein, aber mit vielen und sowieso unterhaltsam -> https://www.youtube.com/channel/UCr9qCdqXLm2SU0BIs6d_68Q

---

Aquí no se respeta ni la ley de la selva.
(Hier respektiert man nicht einmal das Gesetz des Dschungels)

Nicanor Parra, San Fabian, Región del Bio Bio, República de Chile

Offline jor

  • Senior Mitglied
  • ****
  • Beiträge: 258
  • Geschlecht: Männlich
Re: Externes Prog(Java) aufrufen
« Antwort #22 am: 09.12.05 - 12:42:01 »
Hallo ihr beiden,

also: JEP, es funzt! Es war der fehlende Verzeichniseintrag in der Batch-Datei! Obwohl diese ja im aktuellen Verzeichnis zusammen mit den nötigen Prog.-Datein liegt.
Aber... Beim Aufruf wird auch ein Konsolenfenster geöffnet, das hinter meiner Javaanwendung liegt.
Kann ich das noch umgehen, so das nur das eigentliche Javeprogramm angezeigt wird?
Vereinfacht die Dinge, und ihr erleichtert euch das Leben. (Henry David Thoreau)

In diesem Sinne, viele Grüsse Volker (Jor)

Offline jor

  • Senior Mitglied
  • ****
  • Beiträge: 258
  • Geschlecht: Männlich
Re: Externes Prog(Java) aufrufen
« Antwort #23 am: 09.12.05 - 12:43:39 »
@Ralf,

nee du, das ist für mich Neuland, hast du eine Tipp wo ich Info dazu bekomme
(Java im Notes-Agenten laufen lassen) ?
Vereinfacht die Dinge, und ihr erleichtert euch das Leben. (Henry David Thoreau)

In diesem Sinne, viele Grüsse Volker (Jor)

Offline jor

  • Senior Mitglied
  • ****
  • Beiträge: 258
  • Geschlecht: Männlich
Re: Externes Prog(Java) aufrufen
« Antwort #24 am: 09.12.05 - 12:57:25 »
Ich habe die Jar-File-Erstellung grade mit Eclipse durchgeführt, mit Testdaten.
Hat auch gefunzt. Hier habe ich jetzt leider nicht das richtige Java-Projekt zur
Verfügung, werde es heute am Abend nochmal ausprobieren.

Vielen Dank nochmal an euch!!! Ihr habt mir sehr weiter geholfen!

Grüße, Volker
Vereinfacht die Dinge, und ihr erleichtert euch das Leben. (Henry David Thoreau)

In diesem Sinne, viele Grüsse Volker (Jor)

Offline Ralf_M_Petter

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.879
  • Geschlecht: Männlich
  • Jeder ist seines eigenen Glückes Schmied
    • Ralf's Blog
Re: Externes Prog(Java) aufrufen
« Antwort #25 am: 09.12.05 - 13:01:59 »
In der Designer Hilfe unter Stichwort Writing Java in an Agent

Grüße

Ralf
Jede Menge Tipps und Tricks zu IT Themen findet Ihr auf meinem Blog  Everything about IT  Eine wahre Schatzkiste sind aber sicher die Beiträge zu meinem Lieblingsthema Tipps und Tricks zu IBM Notes/Domino Schaut doch einfach mal rein.

Offline jor

  • Senior Mitglied
  • ****
  • Beiträge: 258
  • Geschlecht: Männlich
Re: Externes Prog(Java) aufrufen
« Antwort #26 am: 09.12.05 - 13:14:53 »
Danke!  :)  :)  :)
Vereinfacht die Dinge, und ihr erleichtert euch das Leben. (Henry David Thoreau)

In diesem Sinne, viele Grüsse Volker (Jor)

Offline flaite

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.966
    • mein del.icio.us
Re: Externes Prog(Java) aufrufen
« Antwort #27 am: 09.12.05 - 13:28:37 »
Aber... Beim Aufruf wird auch ein Konsolenfenster geöffnet, das hinter meiner Javaanwendung liegt.
Kann ich das noch umgehen, so das nur das eigentliche Javeprogramm angezeigt wird?
pause aus bat Datei entfernen. Wobei du dann natürlich auch wieder keine Fehlermeldungen siehst.
Ich stimm nicht mit allen überein, aber mit vielen und sowieso unterhaltsam -> https://www.youtube.com/channel/UCr9qCdqXLm2SU0BIs6d_68Q

---

Aquí no se respeta ni la ley de la selva.
(Hier respektiert man nicht einmal das Gesetz des Dschungels)

Nicanor Parra, San Fabian, Región del Bio Bio, República de Chile

Offline jor

  • Senior Mitglied
  • ****
  • Beiträge: 258
  • Geschlecht: Männlich
Re: Externes Prog(Java) aufrufen
« Antwort #28 am: 09.12.05 - 13:40:08 »
Nö nö, meine Batch sieht so aus:
   cd c:\Programme\lotus\notes\data\
   java FirstForm

Denn Pauseeintrag hatte ich schon rausgenommen, trotzdem Ablauf: Dosfenster öffnet sich, Javaanwendung öffnet sich -> Ich schliesse Javaanwendungsfenster -> Javaanwendung wird ausgeschlossen und dann das Dosfenster.

Vereinfacht die Dinge, und ihr erleichtert euch das Leben. (Henry David Thoreau)

In diesem Sinne, viele Grüsse Volker (Jor)

Offline flaite

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.966
    • mein del.icio.us
Re: Externes Prog(Java) aufrufen
« Antwort #29 am: 09.12.05 - 13:40:51 »
Seltsam.

Zu Eclipse würde ich mir eins der mittlerweile zahlreich vorhandenen Anwenderbücher kaufen. Die Autoren schreiben sowieso voneinander ab. Da ist es vielleicht nicht so wichtig welches du dir kaufst. Wichtig ist:
- Aktuell
- Ein Buch über Eclipse benutzen und nicht plug-ins entwickeln. Das ist ein anderes Thema.

Mittlerweile gibts bei Oreilley ein Pocket Guide auf Englisch, der nur 9 Dollar kostet. Damit vielleicht anfangen und wenn du mehr machst, besseres Buch kaufen. Eclipse ist zwar einfach zu bedienen. Zum Nutzen der zahlreichen nützlichen bonus-features hilft aber ein Buch wirklich.

Gruß Axel
Ich stimm nicht mit allen überein, aber mit vielen und sowieso unterhaltsam -> https://www.youtube.com/channel/UCr9qCdqXLm2SU0BIs6d_68Q

---

Aquí no se respeta ni la ley de la selva.
(Hier respektiert man nicht einmal das Gesetz des Dschungels)

Nicanor Parra, San Fabian, Región del Bio Bio, República de Chile

Offline jor

  • Senior Mitglied
  • ****
  • Beiträge: 258
  • Geschlecht: Männlich
Re: Externes Prog(Java) aufrufen
« Antwort #30 am: 09.12.05 - 13:48:26 »
@Axel,

da stimme ich dir uneingeschränkt zu. Ich habe auch Bücher zu Java, aber wie es so ist als Anfänger, wenn man das "Fehlverhalten" nicht deuten kann, dann fällt es um so schwerer
die richtigen Textabschnitte zu finden, die man sich dann z. T. auch noch selbst erklären muss.
Java ist halt sehr mächtig, sehr viel Einsatzbereiche und ... nah ist ja alles bekannt.
Außerdem habe ich aber das Problem, das ich direkt ins kalte Wasser geschubst wurde und so sitze ich schon in einem, wenn auch kleinem, Java-Projekt.

So so, die Autoren schreiben alle ab.  ;) ;) Ist schon erstaunlich, wie so manches Buch vom Inhalt her aufgebaut ist...
Danke, Volker
Vereinfacht die Dinge, und ihr erleichtert euch das Leben. (Henry David Thoreau)

In diesem Sinne, viele Grüsse Volker (Jor)

Offline Ralf_M_Petter

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.879
  • Geschlecht: Männlich
  • Jeder ist seines eigenen Glückes Schmied
    • Ralf's Blog
Re: Externes Prog(Java) aufrufen
« Antwort #31 am: 09.12.05 - 16:36:57 »
Hallo Volker!

Bin jetzt nicht in der Firma, deshalb kann ich jetzt nichts genaueres sagen, da ich mir privat kein Windows leisten will und deshalb Linux verwende. Aber eventuell gibt es eine Einstellung wenn du bei der BAT Datei auf Eigenschaften gehst im Explorer damit er kein Fenster anzeigt. Oder du verzichtest auf die Bat Datei und machst den Aufruf  über nur einen Java Command und dann verwendest du statt java den Befehl javaw. Der macht im Prinzip das gleiche nur öffnet er kein Commandline Window.

Das heisst du musst ein Jar machen und dann nicht eine Batchdatei aufrufen sondern.

javaw FirstForm -classpath c:\pfad\nameJar.jar

pfad\nameJar.jar ist der Pfad und der Name des Jars deines Programms. Dann sollte die lästige schwarze Box weg sein.

Grüße


Ralf
Jede Menge Tipps und Tricks zu IT Themen findet Ihr auf meinem Blog  Everything about IT  Eine wahre Schatzkiste sind aber sicher die Beiträge zu meinem Lieblingsthema Tipps und Tricks zu IBM Notes/Domino Schaut doch einfach mal rein.

Offline flaite

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.966
    • mein del.icio.us
Re: Externes Prog(Java) aufrufen
« Antwort #32 am: 10.12.05 - 12:58:46 »
da stimme ich dir uneingeschränkt zu. Ich habe auch Bücher zu Java, aber wie es so ist als Anfänger, wenn man das "Fehlverhalten" nicht deuten kann, dann fällt es um so schwerer
Das ist mir völlig klar. Man kann immer nur Teilbereiche verstehen. Ich find auch, dass solche >1000 Seiten Dinger wie "Java ist eine Insel" oder wie auch immer ganz bestimmt nicht von vorne bis hinten durchgeackert werden können.
Gerade weil Java so gewaltig ist, hat es für mich immer Sinn gemacht, wenn ich mir konzise Infos zu einem Teilbereich besorgt habe. Wenn man mit Eclipse arbeitet, macht es Sinn, sich zumindest ein kleines Spezialbuch dazu zu besorgen.
Zitat
Außerdem habe ich aber das Problem, das ich direkt ins kalte Wasser geschubst wurde und so sitze ich schon in einem, wenn auch kleinem, Java-Projekt.
An sich nicht schlecht. Noch besser wäre es, wenn du jemanden in der Nähe hättest, der ein bischen Plan von der Materie hat. Das ist aber erschreckend oft nicht der Fall. Bei wirklich großen Projekten kann das fatalst sein. Ist aber theoretisch ein Problem des Managements. In der Praxis leider oft nicht.


viel Glück

Axel

btw. habe ich gestern sehr spät noch versucht eine RMI-Umgebung aufzubauen und bin gescheitert.  ::)
Ich stimm nicht mit allen überein, aber mit vielen und sowieso unterhaltsam -> https://www.youtube.com/channel/UCr9qCdqXLm2SU0BIs6d_68Q

---

Aquí no se respeta ni la ley de la selva.
(Hier respektiert man nicht einmal das Gesetz des Dschungels)

Nicanor Parra, San Fabian, Región del Bio Bio, República de Chile

Offline Ralf_M_Petter

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.879
  • Geschlecht: Männlich
  • Jeder ist seines eigenen Glückes Schmied
    • Ralf's Blog
Re: Externes Prog(Java) aufrufen
« Antwort #33 am: 10.12.05 - 21:34:29 »
Hallo Axel!

ich stehe immer noch auf dem Schlauch was du mit RMI bei diesem Topic machen willst. Ich denke doch bei RMI reden wir von Remote Method Invocation oder?

Ich kann mir hier in diesem Szenario nicht vorstellen, was das hier bringen soll. Eventuell könnte ich mir noch JNI (Java Native Interface) vorstellen, aber das ist meiner Meinung nach auch nicht sinnvoll.

Würde mich freuen zu erfahren, was du meinst.

Grüße

Ralf
Jede Menge Tipps und Tricks zu IT Themen findet Ihr auf meinem Blog  Everything about IT  Eine wahre Schatzkiste sind aber sicher die Beiträge zu meinem Lieblingsthema Tipps und Tricks zu IBM Notes/Domino Schaut doch einfach mal rein.

Offline flaite

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.966
    • mein del.icio.us
Re: Externes Prog(Java) aufrufen
« Antwort #34 am: 10.12.05 - 23:05:53 »
ich stehe immer noch auf dem Schlauch was du mit RMI bei diesem Topic machen willst. Ich denke doch bei RMI reden wir von Remote Method Invocation oder?

Hallo Ralf,

imho ist der einfache Aufruf eines Java Programms problematisch, weil es an sich keine Rückmeldung liefert. Das Java Programm wird einfach losgefeuert und gut ist.

Gut. Man kann das Java Programm ein File erzeugen lassen und einen zweiter Agent holt dann das File ab.

Mit RMI kann man das aber viel besser managen. D.h. Irgendwo läuft ein RMI Server mit dem entsprechenden Programm in seiner Registry. In Notes ist ein Java Agent mit den Stubs für die Kommunikation mit dem RMI-Server. Es wird dann die entsprechende remote Methode aufgerufen und vom RMI-Server die Antwort zurückgeschickt. Man braucht einen Java-Agenten, um das anzusprechen. Aber zumindest wartet der Agent, bis das Programm abgearbeitet ist und erhält die Rückmeldung. In der Rückmeldung kann auch eine Exception drin sein.

Wenn das Java Programm auf dem Client laufen soll, ist das sogar noch sinnvoller, weil man sich dann das Verteilen der Anwendung spart. Der RMI-Server läuft auf einem Rechner und kann von allen Clients angesprochen werden.

Alternativen zu RMI wären Webservices oder das Programm auf Tomcat zu tun, ein Servlet zu schreiben, dass die Anfrage auf Notes aufnimmt und etwas an Notes zurücksendet. Das Notes-Gestaltungselement muss dann natürlich HTTP senden und empfangen.

Gruß Axel 
Ich stimm nicht mit allen überein, aber mit vielen und sowieso unterhaltsam -> https://www.youtube.com/channel/UCr9qCdqXLm2SU0BIs6d_68Q

---

Aquí no se respeta ni la ley de la selva.
(Hier respektiert man nicht einmal das Gesetz des Dschungels)

Nicanor Parra, San Fabian, Región del Bio Bio, República de Chile

Offline jor

  • Senior Mitglied
  • ****
  • Beiträge: 258
  • Geschlecht: Männlich
Re: Externes Prog(Java) aufrufen
« Antwort #35 am: 11.12.05 - 14:16:22 »
@Ralf und kennwort,

bin zwar jetzt nicht in der Firma, habe aber per Eclipse deinen Vorschlag ein Jar zu erzeugen mal ausprobiert. Haut auch prima hin. Jemand mit Java-Erfahrung im Zugriff zuhaben, der einen unterstützen kann, wäre wirklich gut, aber leider bin ich nicht in der glücklichen Lage, in meinem
Bekanntenkreis einen Java erfahrenen Programmierer zu haben der mir hier und da weiterhelfen kann.
Aber ich bin froh, dass ich heutzutage auf so ein tolles Forum und Mitstreiter wie dich (euch alle) zurückgreifen kann. Mir macht es auch Freude, wenn ich anderen helfen kann.
Speziell im Notesbereich sieht es so aus, dass ich auf eine dreijährige Pause zurückblicke. Bin auch einingermassen umfangreich Zertifiziert, aber meine Hochzeit habe ich in der Zeit ab R4.1 bis R5.x gehabt. Und nun quasi einen Neueinstieg, klappt aber super, bin eigentlich ganz gut drin im Script etc.. Aber jetzt möchte ich durch persönliche Gründe, und einem Java-Projekt das auf meine Initiative ins Leben gerufen wurde, ebend Java programmieren.
Ich wünsche euch noch ein schönes (Rest-) Wochenende.

Vereinfacht die Dinge, und ihr erleichtert euch das Leben. (Henry David Thoreau)

In diesem Sinne, viele Grüsse Volker (Jor)

Offline flaite

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.966
    • mein del.icio.us
Re: Externes Prog(Java) aufrufen
« Antwort #36 am: 11.12.05 - 19:53:55 »
Was spricht eigentlich dagegen, das jar-File einfach in einen Notes-Java Agenten einzubinden?


Und (jetzt nicht arrogant gemeint). Aber einfach mit einem 1.200 Seiten Java Einführungsbuch bestückt hinzusetzen und etwas in dieser Programmiersprache zu schreiben halte ich für einen gefährlichen Ansatz.

In Notes hat man einen Rahmen durch Notes (die ganzen Events wie QuerySave, Agenten, usw.).
Mit Java einfach so fröhlich loszuproggen, ist ein bischen wie C zu programmieren.
Es ist vielleicht viel effizienter und freakin' einfacher sich ein Buch zu Struts, JSF, Websphere, Spring-Framework, JBoss oder WebWorks zu kaufen und dann anhand des Onkel Buchschreibers zu lernen. Da ist auch immer eine Beispielanwendung dabei.

Ich hab immer das Gefühl, dass die Leute die Programmiersprache Java für die Basics halten und Sachen wie J2EE Anwendungen oder Frameworks für xTreme Guru Zeug. Das ist aber nicht der Fall. Die Frameworks geben (wie der Name schon sagt) einen Rahmen und machen es damit wirklich einfacher. Einfach loszudaddeln ist vielleicht am Anfang einfacher. Nach einer Weile stellt sich aber bei Anfängern unweigerlich der Verlust von Übersicht, Frustration und und und ein.

Axel
Ich stimm nicht mit allen überein, aber mit vielen und sowieso unterhaltsam -> https://www.youtube.com/channel/UCr9qCdqXLm2SU0BIs6d_68Q

---

Aquí no se respeta ni la ley de la selva.
(Hier respektiert man nicht einmal das Gesetz des Dschungels)

Nicanor Parra, San Fabian, Región del Bio Bio, República de Chile

Offline Ralf_M_Petter

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.879
  • Geschlecht: Männlich
  • Jeder ist seines eigenen Glückes Schmied
    • Ralf's Blog
Re: Externes Prog(Java) aufrufen
« Antwort #37 am: 12.12.05 - 07:49:52 »
Hallo Axel!

Jetzt ist mir klar, für was du RMI einsetzten willst, Nur weiß ich nicht, ob das hier gut funktionieren würde. Denn von dem was Volker schreibt, gehe ich davon aus, dass er in Java irgendwas mit GUI macht und da ist der Ansatz mit RMI dann sehr problematisch, vor allem, weil der NotesClient während des Aufrufs von RMI auch gestalled sein würde. Das ist meistens wenn man ein externes Java Programm für die GUI nimmt nicht gewünscht. Aber dazu müsste man jetzt den Fall sicher genauer kennen um das zu überprüfen.

Grüße

Ralf
Jede Menge Tipps und Tricks zu IT Themen findet Ihr auf meinem Blog  Everything about IT  Eine wahre Schatzkiste sind aber sicher die Beiträge zu meinem Lieblingsthema Tipps und Tricks zu IBM Notes/Domino Schaut doch einfach mal rein.

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz