DonBertone Geschrieben 3. November 2005 Geschrieben 3. November 2005 Hallo, ich habe folgendes Problem: Ich habe eine HTML-Seite über die ich ein jar-File ausführen möchte. Zur Zeit führe ich das jar noch in der Konsole aus mit " java -jar test.jar" Wie kann ich das ganze über einen Link in HTML starten??? Danke an alle die sich Gedanken machen. DonBertone;)
geloescht_JesterDay Geschrieben 3. November 2005 Geschrieben 3. November 2005 Wie kann ich das ganze über einen Link in HTML starten??? Indem du das ganze als Applet schreibst? Nur mal so als Idee...
ksg9-sebastian Geschrieben 3. November 2005 Geschrieben 3. November 2005 über ne html seite gar net.. entweder über Java WebStart (http://java.sun.com/), gibts genügend Docus; oder das ganze als Applet schreiben und dann mittels <applet codebase...> in die HTML-Seite einbinden
Schiller256 Geschrieben 3. November 2005 Geschrieben 3. November 2005 Soweit ich weiß geht so was gar nicht mit HTML. Das ist auch nur gut so, sonst könnte man sich vor Viren und der gleichen Getier nicht mehr retten. Wo soll den diese *.jar Datei gestartet werden? Auf den Server oder auf dem Client. Oder willst du nur ein HTML File haben welches dir das Tippen in der Konsole erspart? Dann geht das auch über eine Batchdatei.
DonBertone Geschrieben 3. November 2005 Autor Geschrieben 3. November 2005 Das ganze soll auf dem Server gestartet werden. Ich versuche jetzt das ganze als Applet zu starten. <applet archive="test.jar" codebase="/test" width=... height...></applet Mal sehen!!! Danke für die antworten!!!
perdian Geschrieben 3. November 2005 Geschrieben 3. November 2005 Wie kann ich das ganze über einen Link in HTML starten???Wie schon zur Sprache gekommen ist: Gar nicht. Eine Alternative wäre ein Applet (was, sofern du Filezugriff oder ähnliches durchführen willst erst signiert werden muss, der Browser gibt dennoch teilweise unschöne Meldungen aus, die das ganze als nicht besonders vertrauenswürdig erscheinen lassen). http://java.sun.com/applets/ Oder aber über Webstart - sauber und elegant. http://java.sun.com/products/javawebstart/ Das ganze soll auf dem Server gestartet werden. Ich versuche jetzt das ganze als Applet zu starten.Das ist ein Widerspruch in sich: Ein Applet wird im Kontext des Client ausgeführt - nicht auf dem Server! Vom Server werden lediglich die Klassen geladen - die ausführende VM befindet sich - im Falles eines Applets - im Kontext des Webbrowsers, also beim Client.
DonBertone Geschrieben 3. November 2005 Autor Geschrieben 3. November 2005 Also zusammenfassend kann man sagen das es nicht möglich ist die Java-Anwendung die in ein JAR-File gepackt ist auf dem Server über ein HTML-Link oder was auch immer zu starten.
ksg9-sebastian Geschrieben 3. November 2005 Geschrieben 3. November 2005 Argh.. über Java WebStart (JWS) erstellst du einen Link zu ner sogenannten .jnlp-Datei. Diese wird von deinem lokalen WebStart-Client "geöffnet". Dann, schnell gesagt, wird die neuste Versiona auf dem Server gesucht, alles wird auf den Client gezogen und gestartet. Andere möglichkeit ist das Applet, wie schon 10x geschrieben. Nachteil ist aber die Sicherheit. Dateizugriffe u.s.w. sind nur sehr bedingt möglich.
perdian Geschrieben 3. November 2005 Geschrieben 3. November 2005 Also zusammenfassend kann man sagen das es nicht möglich ist die Java-Anwendung die in ein JAR-File gepackt ist auf dem Server über ein HTML-Link oder was auch immer zu starten.Nein, zusammenfassend kann man das so nicht sagen. Du kannst den Webserver so konfiguieren, dass beim Aufruf von http://foo.bar/foobar.html automatisch ein Skript bzw. ein Systembefehl ausgeführt wird, der wiederrum eine Java Applikation mit dem Classpath der übergebenen JAR-Datei starten und eine Main-Klasse aufruft. als Servlet z.B. so: Der Deployment Descriptor: <web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4"> <servlet> <servlet-name>foo</servlet-name> <servlet-class>foo.bar.FooBarServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>foo</servlet-name> <url-pattern>/*</url-pattern> </servlet-mapping> </web-app> Und das dazugehörige Servlet: package foo.bar; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; import javax.servlet.http.HttpServlet; public class FooBarServlet extends HttpServlet { public void service(ServletRequest arg0, ServletResponse arg1) throws ServletException, IOException { String[] commandArray = new String[] { "/usr/local/java/bin/java", "-jar", "/home/foo/test.jar" }; ProcessBuilder processBuilder = new ProcessBuilder(commandArray); Process process = processBuilder.start(); } } Zugegeben: Sehr von hinten durch die Brust ins Auge, aber funktionieren tuts
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden