Autor Thema: Starten externer Java Application  (Gelesen 5986 mal)

Offline baumi78

  • Aktives Mitglied
  • ***
  • Beiträge: 124
  • Ich liebe dieses Forum!
Starten externer Java Application
« am: 24.02.03 - 12:37:55 »
Gibt es eine Möglichkeit aus Lotus Script ein externes Java Programm zu starten, wenn ja wie kann ich dies realisieren??

Offline Don Pasquale

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.390
  • Geschlecht: Männlich
  • Don Pasquale
    • Auf Verlorenem Posten
Re:Starten externer Java Application
« Antwort #1 am: 24.02.03 - 13:43:14 »
Probier mal so etwas,
da man mit Shell nur com exe und bat aufrufen kann
musst Du eben java aufrufen und den Programmnamen als Parameter mitgeben

Aufruf = "C:\java\java.exe javaprogramm.java"

taskId% = Shell(Aufruf,1)   

Ciao

Don Pasquale

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re:Starten externer Java Application
« Antwort #2 am: 24.02.03 - 14:12:29 »
Zitat
da man mit Shell nur com exe und bat aufrufen kann

... es gehen auch andere Dateien, du mußt nur noch ein START dazwischenklemmen -

taskId% = Shell(START DateiPfad\DateiName.mitEndung )  

... wenn ich es noch richtig weiß...
...ob es allerdingsw mit Java-Applets läuft wage ich zu bezweifeln...

ata
Grüßle Toni :)

Offline Don Pasquale

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.390
  • Geschlecht: Männlich
  • Don Pasquale
    • Auf Verlorenem Posten
Re:Starten externer Java Application
« Antwort #3 am: 24.02.03 - 14:15:47 »
@Ata:

WAAS,

und wieso lese ich darüber nichts in der Hilfe ?

ciao

Don Pasquale

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re:Starten externer Java Application
« Antwort #4 am: 24.02.03 - 14:18:02 »
... oh Gott - hab ich was angestellt?  :-X :-X :-X

ata
Grüßle Toni :)

Offline Don Pasquale

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.390
  • Geschlecht: Männlich
  • Don Pasquale
    • Auf Verlorenem Posten
Re:Starten externer Java Application
« Antwort #5 am: 24.02.03 - 14:31:02 »
Ich hatte das Problem nämlich und die Hilfe ist da ziemlich eindeutig.
Ich musste einiges umstricken, weill ich das vorher anders hatte.
 :(

A string expression whose value is the name of the program to run, including arguments. program can be the name of an executable file that uses a file name extension of BAT, COM, PIF, or EXE


Ciao

Don Pasquale
« Letzte Änderung: 24.02.03 - 14:31:50 von Don Pasquale »

Offline Performance

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.096
  • Geschlecht: Männlich
  • I love YaBB 1G - SP1!
Re:Starten externer Java Application
« Antwort #6 am: 24.02.03 - 14:33:50 »
ein Java Programm sollte kein Problem sein - ist ja ein normale exe nur in java geschrieben, ein applet müsste auch gehen wobei der Pfad des jdk und der Java Klasse angegeben wird.

- das applet kann auch über ne bat oder com gestartet werden


cu
Wir können alles außer hochdeutsch !

Alles ist möglich, es ist nur eine Frage der Zeit oder des Geldes!

Offline baumi78

  • Aktives Mitglied
  • ***
  • Beiträge: 124
  • Ich liebe dieses Forum!
Re:Starten externer Java Application
« Antwort #7 am: 24.02.03 - 15:07:59 »
Probier mal so etwas,
da man mit Shell nur com exe und bat aufrufen kann
musst Du eben java aufrufen und den Programmnamen als Parameter mitgeben

Aufruf = "C:\java\java.exe javaprogramm.java"

taskId% = Shell(Aufruf,1)   

Ciao

Don Pasquale

Wird bei der Übergabe des Programmnamens der gesamte Pfad angegeben und warum .java ?? Außerdem möchte ich dem Javaprogramm selbst auch Parameter übergeben! hast du vielleicht etwas Beispielcode??

Offline Don Pasquale

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.390
  • Geschlecht: Männlich
  • Don Pasquale
    • Auf Verlorenem Posten
Re:Starten externer Java Application
« Antwort #8 am: 24.02.03 - 15:13:44 »
Hallo baumi,

Warum java ?

Welche Endung hat den das Javaprogramm, dass Du aufrufen willst ?

Dim TasId As Integer

TaskID% = Shell(Java.exe LavaProgramm.java Parameter1 Paramater2 ParameterN,1)


Ich habe leider keinen Beispielcode,
zeig doch mal wie weit Du bist.


Ciao

Don Pasquale

Offline baumi78

  • Aktives Mitglied
  • ***
  • Beiträge: 124
  • Ich liebe dieses Forum!
Re:Starten externer Java Application
« Antwort #9 am: 24.02.03 - 15:40:08 »
Also im Moment sieht es so aus, ohne Parameterübergabe, ich bekomme als Returncode 33 aber das Programm wird nicht scheinbar nicht korrekt ausgeführt, sollte aber funktionieren. Wenn ich es per "hand" starte klappt es jedenfalls. Meine Shell öffnet sich nur kurz, kann ich das beeinflussen, das ich sehe was überhaupt passiert??

Sub Click(Source As Button)
   Dim aufruf As String
   aufruf= "C:\jdk1.3.1_04\bin\java.exe C:\jdk1.3.1_04\projects\PortWriteSMS.java,1"
   taskId% = Shell(aufruf,1)  
   'Msgbox(taskID%) 'returns 33 if correct started
End Sub

Offline Don Pasquale

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.390
  • Geschlecht: Männlich
  • Don Pasquale
    • Auf Verlorenem Posten
Re:Starten externer Java Application
« Antwort #10 am: 24.02.03 - 15:59:43 »
Hallo Baumi,

sieht äusserst korrekt aus.
Was Du da schilderst kommt mir aber bekannt vor, allerdings
waren da bei mir die Pfade nicht gesetzt.
Mit Print Aufruf bekommst Du im Debugger den genauen Wortlaut
des Aufrufs.

Dann ein cmd Fenster öffnen
und dann Einfügen. Vielleicht hat Dein Javapgrogramm einen
Fehler oder es wird nicht gefunden.

Ciao

Don Pasquale


Offline baumi78

  • Aktives Mitglied
  • ***
  • Beiträge: 124
  • Ich liebe dieses Forum!
Re:Starten externer Java Application
« Antwort #11 am: 24.02.03 - 16:28:56 »
Also scheinbar findet er tatsächlich die Klassen nicht, verstehe ich allerdings nicht denn wenn ich das Java Programm im bin verzeichnis starte funktioniert es auch, der Classpath ist scheinbar korrekt gesetzt. Was meinst du mit Pfade nicht gesetzt??

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re:Starten externer Java Application
« Antwort #12 am: 24.02.03 - 21:43:09 »
... hier nun der Code zum Starten von Dateien:

   Dim taskId As Integer
   taskId% = Shell("START d:\tabulatur.xls")

... das klappt bislang ganz gut damit...

ata
Grüßle Toni :)

Offline RedFox

  • Frischling
  • *
  • Beiträge: 33
  • Geschlecht: Männlich
  • Notes? Du mußt es lieben!
    • Elmar Fuchs
Re:Starten externer Java Application
« Antwort #13 am: 25.02.03 - 08:47:12 »


   aufruf= "C:\jdk1.3.1_04\bin\java.exe C:\jdk1.3.1_04\projects\PortWriteSMS.java,1"

Hallo,
da es bekanntlich keine dumme Fragen gibt, hier gleich zwei davon:
- warum übergibst Du die java Datei und nicht die class?
- warum steht im Aufruf-String nochmal die ,1 drin ?

Den Pfad must Du meines Erachtens auch nicht angeben.

Ich habe das mit

aufruf = "c:\j2sdk1.4.1\bin\java NameDerClassDatei"
taskId% = Shell(aufruf,1)

versucht - geht bei mir.

Grüße

Offline baumi78

  • Aktives Mitglied
  • ***
  • Beiträge: 124
  • Ich liebe dieses Forum!
Re:Starten externer Java Application
« Antwort #14 am: 25.02.03 - 10:18:27 »
O.k. ich hab es hinbekommen, ja das mit .java hatte mich auch etwas irretiert, wäre ja auch etwas komisch gewesen!! Das mit der doppelten 1 als Parameter natürlich auch!! Es funktioniert jetzt jedenfalls und ich kann auch Parameter an das Java Programm übergeben. Vielen Dank für alle Tips und bis zum nächsten Problem.

Grüße Baumi




Sub Click(Source As Button)
   
   Dim aufruf As String
   aufruf= "c:\jdk1.3.1_04\bin\java PortWriteSMS " & """+49172000000""" & " ""Dies ist ein Test"""  
   
   taskId% = Shell(aufruf,1)  
   
End Sub

Offline cash

  • Aktives Mitglied
  • ***
  • Beiträge: 138
Re: Starten externer Java Application
« Antwort #15 am: 26.03.07 - 12:55:04 »
ich habe so ein ähnliches Problem.

Der Aufruf der Anwendung klappt bei mir ohne Probleme.

Leider sind bei uns im Unternehmen die Programme nicht immer gleich installiert
sondern an 3 Stellen:

c:\Programme\microsoft office PE\Office11\winword.exe oder
c:\Programme\microsoft office SE\Office11\winword.exe oder
c:\Programme\microsoft office\Office11\winword.exe

kann ich irgendwie eine Abfrage basteln
starte erst den ersten Pfad --> wenn nicht 33 zurückgegeben wird probier den nächsten und so weiter... und unterdrück die Fehlermeldung "File not found"

Aber irgendwie kommt bei mir nur die Fehlermeldung File not found und Notes ist fertig....

Cash

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re: Starten externer Java Application
« Antwort #16 am: 27.03.07 - 08:26:14 »
Das ist ein Fall für das Errorhandling. Mehr dazu findest du hier: http://atnotes.de/index.php?topic=11980.0

Axel
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline cash

  • Aktives Mitglied
  • ***
  • Beiträge: 138
Re: Starten externer Java Application
« Antwort #17 am: 27.03.07 - 09:48:19 »
Vielen Dank das hat mich ein gutes Stück weiter gebracht. Leider aber nicht bis zum Ziel:

Ich schaffe es jetzt 2 versch. Installationsverzeichnisse anzuspringen aber dann hängt er. Hier mal ein Teil des Codes:

Programm:
   prog=" "
   Select Case lager
   Case "Word" : prog="c:\Programme\Microsoft Office SE\Office11\winword.exe"   
   Case "Excel" : prog="c:\Programme\Microsoft Office SE\Office11\excel.exe"   
   Case "Acrobat Reader" : prog="acrord32"
   End Select
   prog=prog+datei
   If start=0 Then
      On Error 53 Goto Fehler1
      taskId% = Shell(prog, 1)
      Exit Sub      
   End If
   
Fehler1:
   Messagebox "Error1" & Str(Err) & ": " & Error$
   prog=" "
   start=0
   Select Case lager
   Case "Word" : prog="c:\Programme\Microsoft Office PE\Office11\winword.exe"   
   Case "Excel" : prog="c:\Programme\Microsoft Office PE\Office11\excel.exe"         
   Case "Acrobat Reader" : prog="acrord32"
   End Select      
   prog=prog+datei
   If start=0 Then
      On Error 53 Goto Fehler2      
      taskId% = Shell(prog, 1)
      Exit Sub      
   End If
   
Fehler2:
   Messagebox "Error2" & Str(Err) & ": " & Error$
   prog=" "
   start=0
   Select Case lager
   Case "Word" : prog="c:\Programme\Microsoft Office\Office11\winword.exe"   
   Case "Excel" : prog="c:\Programme\Microsoft Office\Office11\excel.exe"   
   Case "Acrobat Reader" : prog="acrord32"
   End Select      
   prog=prog+datei
   If start=0 Then
      On Error 53 Goto Fehler2      
      taskId% = Shell(prog, 1)
      Exit Sub         
   End If
   

Ich vermute mal er will einfach nicht den zweiten on error 53 goto fehler 2 ausführen!

Gibt es dafür eine Lösung?

Gruß

Cash

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re: Starten externer Java Application
« Antwort #18 am: 28.03.07 - 08:22:03 »
Ähm, wenn ich mir den Code so anschaue und ich mich nicht alles täuscht, schickst du ihn in eine Endlosschleife.

...
Fehler2:
   Messagebox "Error2" & Str(Err) & ": " & Error$
..
   If start=0 Then
      On Error 53 Goto Fehler2     
      taskId% = Shell(prog, 1)
      Exit Sub         
   End If
....

Du springst beim Fehler immer wieder vor die Stelle die den Fehler verursacht hat und somit tritt der Fehler ja wieder auf, usw.


Axel
 
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline Pyewacket

  • Senior Mitglied
  • ****
  • Beiträge: 310
  • Geschlecht: Männlich
Re: Starten externer Java Application
« Antwort #19 am: 29.03.07 - 13:48:35 »
Ich würde das anders machen.
Wenn Office auf dem Rechner installiert ist dann sind die Dateiendungen mit den Office-Komponenten assoziiert. Jetzt müsste man 'nur' noch diese Verknüpfung in der Registry suchen und dort steht dann wo das Programm hinterlegt ist.
ATOS.org - Feel the music!

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz