# Applet mit bestimmter JRE ausführen



## RafaelG (17. Mrz 2009)

Hallo,

ich möchte erreichen dass meine JAR nur mit einer bestimmten JRE-Version geöffnet werden kann. Dies möchte ich aus dem Grund machen, da in meinem Programm diverse Fehler auftreten sobald eine höhere JRE verwendet wird. Und bis ich dir Probleme behoben habe würde die Benutzung auf die vorgegebene Version einschränken.

Bisher verwende ich dafür folgenden HTML-Code:


```
<OBJECT codebase ="jinstall-6u7-windows-i586-jc.cab#version=6,0,0,7"
    classid = "clsid:8AD9C840-044E-11D1-B3E9-00805F499D93"
    
    WIDTH = 850 HEIGHT = 730 >
    <PARAM NAME = CODE 		VALUE = "start_class.class" >
    <PARAM NAME = ARCHIVE 	VALUE = "meine.jar" >
    <PARAM NAME = "type" 	VALUE = "application/x-java-applet;version=1.6.0_7">
    <PARAM NAME = "scriptable" 	VALUE = "false">
    <PARAM NAME = "java_arguments" value="-Xmx128m">
```

Nun habe ich aber dass Problem, dass die Versionsvorgabe ignoriert wird. Ich habe bei SUN gelesen dass die ClassID innerhalb der Java 1.6 Reihe nicht mehr verändert wurde, was dieses Verhalten erklären würde. 
Daher wollte ich mal Fragen ob jemand vielleicht eine Möglichkeit kennt mein Ziel zu realisieren?
Habe versucht über JavaScript die Java-Version auszulesen, dies macht aber der IE nicht mit. Und ein eigenes kleines Applet welches vorher die Version prüft würde ich gerne vermeiden wollen.

Bin für alle Vorschläge dankbar.
Gruss
Rafael


----------



## bronks (17. Mrz 2009)

Entscheide in Deinem Applet anhand der JavaVersion und gib ggf. eine Fehlermeldung aus.

Zur Info: Mich kotzt genau dieses Thema selbst extremst an. Ich habe hier ein Programm, welches ich speziell für bestimmte JVM anpassen mußte, weil die Javaversionen untereinander so schon nicht kompatibel sind und wehe es kommt noch ein anderes Betriebssystem dazu. Jede dieser Programmversionen lauft nur auf einer bestimmten JVM einwandfrei.


----------



## RafaelG (17. Mrz 2009)

Vielen Dank für die Antwort. Aber Fehlermeldungen sind eher eine unschöne Lösung. Das macht einen schlechten Eindruck finde ich.

Gruss
Rafael


----------



## maki (17. Mrz 2009)

Frage aus beruflichem Interesse/Neugier: Was geht denn mit den nachfolgenden Versionen ab 1.6.0_7  nicht mehr?


----------



## RafaelG (17. Mrz 2009)

Es ist sehr häufig vorgekommen dass das Programm sich aufhängt. Auch gibt es immerwieder Grafikfehler in einigen Fenstern. Und mit den veränderten Einstellungen im LookAndFeel (ab JRE 1.6.0_10) hatte ich am Anfang ebenfalls Probleme. Sind halt diverse Kleinigkeiten die in Summe schon sehr nerven.


----------



## Ebenius (17. Mrz 2009)

RafaelG hat gesagt.:


> Es ist sehr häufig vorgekommen dass das Programm sich aufhängt. Auch gibt es immerwieder Grafikfehler in einigen Fenstern.


Anmerkung: Das liegt meist fehlerhafter Programmierung bzgl. Synchronisierung zwischen dem Event Dispatch Thread und anderen Threads. Man sollte lieber die Energie aufwenden, diese Fehler ursächlich zu beheben.

Ebenius


----------



## RafaelG (17. Mrz 2009)

Ich gebe dir da vollkommen Recht, Ebenius. Jedoch dauert es seine Zeit, bis alle 300 Klassen bearbeitet sind. Ich habe die Anwendung nicht selbst Programmiert, sondern entwickle diese nur weiter. Deswegen soll das, was ich oben beschrieben habe auch nur eine temporäre Lösung sein, bis ich dir Probleme in den Griff bekommen habe.


----------



## Ebenius (17. Mrz 2009)

RafaelG hat gesagt.:


> Ich habe die Anwendung nicht selbst Programmiert, sondern entwickle diese nur weiter. Deswegen soll das, was ich oben beschrieben habe auch nur eine temporäre Lösung sein, bis ich dir Probleme in den Griff bekommen habe.


Das Argument lasse ich gelten. 

Zu dem Workaround kann ich aber leider nichts beisteuern.

Happy Hacking!
Ebenius


----------



## Wildcard (17. Mrz 2009)

Einen Workaround gibt es nicht, da es sich um einen Security Aspekt handelt. Früher konnte man bestimmte Versionen vorschreiben, das wurde allerdings entfernt, da man auf diese Weise bewusst alte Update Levels ansprechen konnte und so Sicherheitslücken ausnutzen konnte.
Also, da besteht wenig Hoffnung für dich.


----------



## RafaelG (18. Mrz 2009)

Vielen Dank an alle für die Antworten. 
Werde dann wohl doch mit einem vorgelagerten Applet arbeiten müssen.

Gruss
Rafael


----------

