JAVA Programm in Website einbinden

Max Jostes

Mitglied
Zahlreiche Besucher einer Website haben seit Jahr und Tag mit den bekannten Browsern ein in eine Website eingebundenes JAVA-Programm uneingeschraenkt verwendet. Seit diese Webbrowser JAVA nicht mehr unterstuetzten, ist das bedauerlicherweise nicht mehr moeglich.

Weblink: ( https://www.nlp.eu/exp_com/calibrate/calibrate.shtml )

Der Programmierer dieses JAVA-Programms ist nicht mehr erreichbar, die dort angegebene Website steht zum Verkauf.

Hat jemand eine Idee, wie dieses Programm trotz der fehlenden Unterstuetzung durch die Webbrowser weiterhin genutzt werden kann?
 
K

kneitzel

Gast
Java Applets sind schon lange deprecated. Man kann ein Applet aber natürlich auch direkt mit dem appletviewer von Java 8 verwenden. Also z.B. mit Hilfe des Adopt OpenJDK 8 starten.

Wenn das Applet da zukünftig nicht gehostet wird, dann müssten Du schauen, ob Du davon eine Kopie bekommen kannst. Dann kannst Du es auch lokal nutzen.
 

mihe7

Top Contributor
Java Applets sind schon lange deprecated. Man kann ein Applet aber natürlich auch direkt mit dem appletviewer von Java 8 verwenden. Also z.B. mit Hilfe des Adopt OpenJDK 8 starten.
So ist es:
Bildschirmfoto von »2021-07-18 13:19:26«.png

Hier braucht man allerdings eine Policy:
[code title=applet.policy]
grant {
permission java.security.AllPermission;
};
[/code]

Dann kann man den Spaß laufen lassen mit
Code:
appletviewer -J-Djava.security.policy=applet.policy https://www.nlp.eu/exp_com/calibrate/calibrate.shtml
 

Max Jostes

Mitglied
Java Applets sind schon lange deprecated. Man kann ein Applet aber natürlich auch direkt mit dem appletviewer von Java 8 verwenden. Also z.B. mit Hilfe des Adopt OpenJDK 8 starten.

Wenn das Applet da zukünftig nicht gehostet wird, dann müssten Du schauen, ob Du davon eine Kopie bekommen kannst. Dann kannst Du es auch lokal nutzen.
Danke fuer die Hinweise. Die 3 Applets sind vorhanden. Es geht darum, dass die Besucher der Website das oben bei mihe7 (Merci dafuer!) sichtbare Programm nutzen koennen. Wie genau muss die Website veraendert werden, damit das moeglich ist? Bin leider in dieser Hinsicht voellig ratlos! Oder ist das mit den Webbrowsern so ueberhaupt nicht mehr moeglich?
 
K

kneitzel

Gast
Ich sehe da jetzt erst einmal keinen einfachen Weg, es als Web Applikation laufen zu lassen.

Workarounds, die ich sehe, sind halt:
- Man kann was zusammen packen, das die Leute dann herunter laden können um es zu entpacken und dann zu starten (Also zur Not einfache in OpenJDK mit den Applet Dateien und einem entsprechenden Startscript. Das könnte schon gehen). Wenn die Webseite zum Verkauft steht, dann wäre so eine offline Lösung evtl. mit am Einfachsten.
- Wenn man auch die Sourcen haben sollte (oder wenn das Applet nicht zu umfangreich ist, reicht ggf. auch das, was ein Decompiler liefert), dann könnte man schauen, ob man es in eine Desktop Anwendung umwandeln kann. Das läuft dann auch auf eine Offline Lösung hinaus, aber das Ergebnis wäre vermutlich kleiner und man hätte auch eine Chance auf ein einzelnes, kleineres Executable.

Rein um es nicht verschwiegen zu haben nenne ich noch eine technische Lösung / Idee. Die ist aber für rein private Umfelder unbrauchbar (meiner Meinung nach).
Prinzipiell gibt es auch noch eine Technology "Web Start", so dass über eine Webseite eine Desktop Applikation geladen und gestartet wird (incl. lokalem Cache, Check beim Start ob es eine neue Version gibt u.s.w.). Das ist aber auch alles deprecated aber es gibt eine Open Source Variante:
OpenWebStart,

Das ist aber aus meiner Sicht keine Technologie, die ich empfehlen würde. Das ist mehr etwas für Firmen, die irgend eine Software nutzen, die das eben braucht und die dann halt die notwendigen Grundlagen auf allen Firmenrechnern entsprechend vorhält. Das ist also wirklich nur interessant, wenn alle Zielsysteme mehr oder weniger unter Deiner Kontrolle sind und Du da sowas wie JNLP installieren und konfigurieren kannst/willst.

Das einfach einmal die Optionen, die ich da so sehe...
 

mihe7

Top Contributor
Oder ist das mit den Webbrowsern so ueberhaupt nicht mehr moeglich?
Mit einem alten Java und einem alten Browser funktioniert das natürlich nach wie vor :) Aber das kann ja nicht Sinn der Übung sein.

Das Problem ist einerseits, dass Oracle mit Java 9 das Browser-Plugin eingestellt hat und andererseits, dass die Browser die NPAPI, auf dem das Plugin basiert, ebenfalls abgekündigt und teilweise auch gekillt haben.

Für den Browser bilden heute HTML5/JavaScript den Standard, um solche Dinge zu realisieren (oder auch WebAssembly, das ist noch relativ jung).

Was macht das Ding eigentlich?
 

Max Jostes

Mitglied
Mit einem alten Java und einem alten Browser funktioniert das natürlich nach wie vor :) Aber das kann ja nicht Sinn der Übung sein.

Das Problem ist einerseits, dass Oracle mit Java 9 das Browser-Plugin eingestellt hat und andererseits, dass die Browser die NPAPI, auf dem das Plugin basiert, ebenfalls abgekündigt und teilweise auch gekillt haben.

Für den Browser bilden heute HTML5/JavaScript den Standard, um solche Dinge zu realisieren (oder auch WebAssembly, das ist noch relativ jung).

Was macht das Ding eigentlich?
Nochmals Dank fuer die Hinweise. Das Programm erzeugt beobachtbare Augenbewegungen (Oben, Mitte, Unten, jeweils Links, Rechts), wenn Menschen etwa innerlich nach der Antwort zu einer Frage suchen, und es zeigt hinterher eine Aufloesung dazu, also die innere Suchstrategie.

Ich habe bereits versucht, das Programm mit alten Browsern zu nutzen, bin allerdings nur in zwei Faellen (Internet Explorer, Opera) nicht weiter als bis zu einem Hinweis auf das fehlende Plugin gekommen. Und selbst wenn das gelungen waere, waere ich keinen Schritt weiter.

Gibt es eine Moeglichkeit, diese drei JAVA Applets, fuer die auch der Source Code vorhanden ist (Decompiled by Procyon v0.5.36), in JavaScript, also den von dir erwaehnten Standard zu konvertieren?
 

mihe7

Top Contributor
Gibt es eine Moeglichkeit, diese drei JAVA Applets, fuer die auch der Source Code vorhanden ist (Decompiled by Procyon v0.5.36), in JavaScript, also den von dir erwaehnten Standard zu konvertieren?
Manuell, sicher. Automatisch: keine Ahnung. Gibt wohl ein paar Tools (GWT, JSweet, j2js, Java2Script), wie mir Google eben verraten hat, aber inwiefern das funktioniert, müsstest Du mal ausprobieren. Wenn Du aber den Quellcode hast, dann könnte es sein, dass Du mit der manuellen Methode besser dran bist.
 
K

kneitzel

Gast
Meine Sicht auf die genannten Tools:
Den genannten Tools fehlt aus meiner Sicht die Abbildung der AWT Componenten. Daher nützt ein übersetzen hin zu JavaScript nicht viel.

SwingJS wollte in dieser Richtung einiges machen. Aber das Projekt scheint 4 Jahre ohne Bewegung zu sein und sagt als Status: "THIS PROJECT IS NOT IN AN EXECUTABLE STATE YET"

Und etwas anderes, das dies versucht hat so abzubilden, ist mir auch nicht bekannt.

Daher wäre das "neu machen" in html/js die Option, die ich gehen würde (so andere Workarounds zur Weiternutzung - eben nicht als Web Applikation - nichts sind). Das Applet ist von der Komplexität her auch nicht besonders groß. 3 Klassen (Calibrate, Face und Eye) die alle nicht groß sind und auch nichts so komplexes machen.
 

Oneixee5

Top Contributor
Ich weiß nicht ob das wirklich hilfreich ist. Ich habe mal gesehen, dass in eine Webseite ein VNC-Viewer eingebettet war. Auf einem Server wurde eine VM gestartet und über den VNC-Viewer konnte das dort laufende Programm bedient werden. Die Verbindung hat nicht lange gedauert. Allerdings war verständlicherweise die Anzahl der VM's limitiert. So konnte es passieren, dass man nicht augenblicklich eine VM bekommen hat. Auf diese Art könnte man auch Applets per Appletviewer bereitstellen.
 
K

kneitzel

Gast
@Oneixee5, coole Idee aber für ein solches Mini-Applet der reinste Overkill. Besser gleich umschreiben, das sollte nicht so schwer sein und dann hat man seine Ruhe :)
Das möchte ich nur einmal kurz bestätigen. Also umschreiben zu einer Swing Applikation ist extrem einfach (ist halt auch alles AWT) und ich habe es einmal schnell ausprobiert.
Der Code ist aber wirklich alt - paar Dinge, die benutzt wurden, sind auf deprecated gesetzt worden mit Java 1.1. Also selbst da sollte man noch paar Refactorings machen (Es wurde einfach mouseDown und action von Component überschrieben). Haupt Änderungen sind:
JFrame statt Applet, main Hinzufügen, die das Fenster erzeugt, init Aufruft und es sichtbar macht. Laden der 3 Bilder anpassen.

@Max Jostes Solltest Du an den Änderungen an Calibrate.java Interesse haben, dann kann ich es Dir auch noch zukommen lassen. Copyright ist nicht geklärt, daher werde ich es nicht veröffentlichen.
 
K

kneitzel

Gast
dann hat er es aber doch immer noch nicht auf seiner Webseite oder verstehe ich da was falsch?
Natürlich nicht - da geht es wirklich nur um eine Offline Desktop Alternative wie ich es in meiner Antwort #5 vorgeschlagen habe. Einfach konvertieren geht so einfach halt eben nicht (aus meiner Sicht aber ich mag mich irren. Würde mich für den TE freuen).

Wenn man eine Lösung wie von @Oneixee5 bauen wollte, dann wäre das aber auch eine Möglichkeit (statt VNC evtl. eine Software nehmen wie TS+, die dann eine App per Web bereitstellen kann...)
 
K

kneitzel

Gast
Ich meinte eigentlich nach JavaScript, nicht nach Swing :) Das dürfte auch kein wahnsinniger Akt sein.
Ja, mir was das schon etwas klar - nur da sehe ich eben keinen wirklich gangbaren Weg (Wobei da die drei Klassen (mit <200, <100 und <50 Zeilen) nicht wirklich eine Herausforderung wären, die Funktionalität neu zu bauen.

Java -> JS ist gut möglich. Aber die verwendeten Komponenten muss es da aber leider geben. Da wird man also Hand anlegen müssen (Auch kein Hexenwerk - die Controls gibt es und Layout dürfte keine große Herausforderung sein.) Das ist aber nicht meine Baustelle - JavaScript und html packe ich nur an, wenn es sein muss ... :p
 

Max Jostes

Mitglied
@kneitzel, danke fuer das Angebot #12. Das ziemlich angestaubte Programm existierte schon deutlich vor 2000. Auf meinem Debian ist es nach einigen Umzuegen mit 08.07.1998 gespeichert. Mein Fazit aus den zahlreichen Beitraegen ist, dass es in JavaScript umgeschrieben werden sollte, um das Browser-Problem mit JAVA zu loesen. Also falls nicht jemand noch eine geniale Idee hat, koennte hier somit ein Punkt gesetzt werden.

Ein aus meiner Sicht wirklich erfreulicher Nachtrag zu den Beitraegen und fuer den Programmierer dieses in die Jahre gekommenen JAVA Programms ist, dass es tatsaechlich mit der Erweiterung "CheerpJ Applet Runner" immer noch einwandfrei funktioniert und nutzbar ist.

( Weblink: https://leaningtech.com/run-java-applets-without-installing-java/ )

Getestet habe ich das Programm mit Chromium (Ubuntu Server), zudem mit Google Chrome und Microsoft Edge (Windows 10 Home). Also alles prima. Aber eben, wie oben bereits erwaehnt, leider noch nicht die Loesung!
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
C Was ist nötig für ein Java-Programm auf Server für Website Java Basics - Anfänger-Themen 18
N Java programm in website einfügen Java Basics - Anfänger-Themen 2
W Java-PRogramm liest als EXE-File Nicht USB, jedoch aus NetBeans Java Basics - Anfänger-Themen 23
M Java Mail Programm Java Basics - Anfänger-Themen 4
E Java Programm zur anzeige, ob Winter- oder Sommerzeit herrscht Java Basics - Anfänger-Themen 62
P Wie kann ich in meinem Java Programm etwas dauerhaft speichern? Java Basics - Anfänger-Themen 5
H Java-Programm zur Ausgabe von Zuständen Java Basics - Anfänger-Themen 80
G Kann Java-Programm nicht als jar aufrufen, auch als EXE nicht Java Basics - Anfänger-Themen 19
benny1993 Java Programm erstellen für ein Fußball-Turnier Java Basics - Anfänger-Themen 3
KeinJavaFreak Erste Schritte Programm "Java(TM) Platform SE binary " nicht vorhanden Java Basics - Anfänger-Themen 1
D Java Programm mit Batch-Datei starten Java Basics - Anfänger-Themen 32
D Wie sehe ich ein Java-Programm? Java Basics - Anfänger-Themen 27
Zrebna Kann Java Programm nicht in Konsole ausführen Java Basics - Anfänger-Themen 1
T Java FXML selbes Fenster verschiedene Stellen im Programm Java Basics - Anfänger-Themen 5
D JAVA Programm schreiben Java Basics - Anfänger-Themen 46
J Mein Java Programm lässt sich nicht mehr bearbeiten Java Basics - Anfänger-Themen 2
A Verarbeiten einer Excel Datei durch das java-Programm Java Basics - Anfänger-Themen 3
B Java Programm soll mit Python kommunizeren Java Basics - Anfänger-Themen 1
F Frage betreff Programm mit dem man C++-Code in JAVA-Code übersetzen lassen kann Java Basics - Anfänger-Themen 2
TimoN11 Mail Programm mit Java? Java Basics - Anfänger-Themen 1
F Java Programm, das kleine Buchstaben in einem String zählen soll und bei großen Buchstaben oder Sonderzeichen abbrechen soll. Java Basics - Anfänger-Themen 5
justemii Gehalt berechnen - Aufgabe Java-Programm Java Basics - Anfänger-Themen 9
N Best Practice How can I creat a programm with java under windows 10 in order to open an spreadsheet in libreoffice calc format Java Basics - Anfänger-Themen 11
P Wie für EIN Java Programm von 64bit Java (=Standard) auf 32bit Java Installation (Windows) umschalten? Java Basics - Anfänger-Themen 6
X Kurzes Java-Programm, das sich komisch verhält Java Basics - Anfänger-Themen 6
G Java-Programm Terminal Java Basics - Anfänger-Themen 2
Dimax Java Programm mit exec starten Java Basics - Anfänger-Themen 5
I Java Programm sieht wie exe aus. Java Basics - Anfänger-Themen 3
G Java-Programm weitergeben Java Basics - Anfänger-Themen 14
A Java-Programm läuft bei installierter JDK aber nicht mit JRE? Java Basics - Anfänger-Themen 5
W Java Programm mit API Anbindung Java Basics - Anfänger-Themen 2
D Java Programm mit JavaScript einbinden Java Basics - Anfänger-Themen 8
X Java Programm MacOS Java Basics - Anfänger-Themen 1
F Java Programm schließen Java Basics - Anfänger-Themen 1
M Java Methode editierbar machen im Programm Java Basics - Anfänger-Themen 62
B Mit Java anderes Java Programm starten Java Basics - Anfänger-Themen 3
J Java Programm Java Basics - Anfänger-Themen 29
B Java Eclipse Programm in einer Batch ausführen Java Basics - Anfänger-Themen 3
L Java Programm zum Auswerten von Daten Java Basics - Anfänger-Themen 11
S Bestehendes Java Programm, einen festen Wert ändern Java Basics - Anfänger-Themen 17
L Java Zip-Programm Java Basics - Anfänger-Themen 16
C Input/Output Textdatei vom Java-Programm nicht geladen Java Basics - Anfänger-Themen 58
M Java Programm über Batch-Datei ausführen Java Basics - Anfänger-Themen 1
B Brauch Hilfe für Java Programm Java Basics - Anfänger-Themen 12
T CMD über Java-Programm aufrufen Java Basics - Anfänger-Themen 2
L Java-Programm kompilieren Java Basics - Anfänger-Themen 24
D Java BlueJ Programm wiederholen? Java Basics - Anfänger-Themen 6
M Java Programm: Lottozahlen Java Basics - Anfänger-Themen 4
I Java Programm Java Basics - Anfänger-Themen 12
F Java Programm öffnen Java Basics - Anfänger-Themen 3
A Erste Schritte Programm in Shell mit bestimmter Java-Version aufrufen Java Basics - Anfänger-Themen 10
J Pdf-Dokument im Java-Programm öffnen Java Basics - Anfänger-Themen 3
M Chat Programm in Java Java Basics - Anfänger-Themen 1
M Wie sicher sind Daten im Java Programm? Java Basics - Anfänger-Themen 9
M Mein erstes Java Programm Java Basics - Anfänger-Themen 5
L Herunterladbares Java Programm in bestimmten Ordner speicher Java Basics - Anfänger-Themen 3
L Konsole öffnen und Java Programm darin ausführen Java Basics - Anfänger-Themen 4
C Programm JAR startet nicht - Could not create the Java Virtual Machine Java Basics - Anfänger-Themen 4
T CMD mit Java Programm öffnen? Java Basics - Anfänger-Themen 5
B Java Programm ohne statische Main Methode aufrufen Java Basics - Anfänger-Themen 5
G Input/Output CSV-Datei über Java-Programm erstellen, Zeichensalat Java Basics - Anfänger-Themen 3
F Java-Programm gibt in Eingabeaufforderung nichts aus Java Basics - Anfänger-Themen 4
M Erste Schritte Java programm unable to access Java Basics - Anfänger-Themen 10
? Klassen einfacher Fehler in einem Java Programm. Java Basics - Anfänger-Themen 5
? Methoden Fehler in einfachem Java Programm. Java Basics - Anfänger-Themen 9
T Selbst erstellten Dateityp mit java Programm assoziieren? Java Basics - Anfänger-Themen 4
S Programm wie Java? Java Basics - Anfänger-Themen 10
M C++ programm (kompiliertes) aus java aufrufen Java Basics - Anfänger-Themen 7
A Eclipse - Java-Programm exportieren für Ubuntu TLS 10 Java Basics - Anfänger-Themen 9
F Java-Programm aus CMD ausführen mit Parametern Java Basics - Anfänger-Themen 7
N Java Programm zum Suchen und Ersetzen von Text Dateien Java Basics - Anfänger-Themen 10
P Probleme Java Programm Java Basics - Anfänger-Themen 6
MiMa Lauffähiges Java Programm erstellen Java Basics - Anfänger-Themen 4
J C++ Bitmanipulations-Programm in Java umwandeln Java Basics - Anfänger-Themen 10
N Java Programm im CMD Fenster öffnen, wie? Java Basics - Anfänger-Themen 17
S Externes Java Programm starten Java Basics - Anfänger-Themen 9
D Java Programm auf Kommandozeile durchführen Java Basics - Anfänger-Themen 12
H Ich kann mein Java Programm Test.class nicht ausführen Java Basics - Anfänger-Themen 6
M Kann Java Programm nicht starten Java Basics - Anfänger-Themen 7
V Java Chat Programm Problem mit IP Addresse Java Basics - Anfänger-Themen 7
S Hilfe zu Java-Programm und JUnit Test!! Java Basics - Anfänger-Themen 5
B Mit Java-Programm Daten aus MySQL-Datenbank auslesen, lokal und nicht lokal. Java Basics - Anfänger-Themen 10
P Java Programm in Powerpoint Java Basics - Anfänger-Themen 5
Y Java Programm URL und String Vergleich! Java Basics - Anfänger-Themen 4
U Java-Programm auf einem Server starten Java Basics - Anfänger-Themen 33
M Kann mein Java Programm nicht starten Java Basics - Anfänger-Themen 6
G Kleine Java Programme aus Main Java Programm starten..... Java Basics - Anfänger-Themen 3
P Java Programm von außen aufrufen Java Basics - Anfänger-Themen 8
D Java programm durch vorgegebene bat ausführen Java Basics - Anfänger-Themen 3
Crashbreaker Eigene Java-Programm ohne hilfe des CMD starten Java Basics - Anfänger-Themen 11
S Interpreter-Fehler Java - Programm ausführen! Java Basics - Anfänger-Themen 12
B Grafische Oberfläche für Java-Programm Java Basics - Anfänger-Themen 5
T Mac OSX - Programm aus Java öffnen Java Basics - Anfänger-Themen 3
H Wie kann ich offline ein Java Programm abspeichern Java Basics - Anfänger-Themen 14
U Visual-Basic Programm mit Java steuern Java Basics - Anfänger-Themen 8
K In MySQL Select Variablen aus Java Programm benutzen Java Basics - Anfänger-Themen 8
J Java-Programm starten Java Basics - Anfänger-Themen 6
C java programm mit Texten, speichern und so Java Basics - Anfänger-Themen 3
W Java-Programm als Icon mit Doppelklick einfach öffnen ? Java Basics - Anfänger-Themen 3
B Java-Programm-Dienst sauber beenden Java Basics - Anfänger-Themen 6

Ähnliche Java Themen


Oben