Newsgroup: it.comp.java
Titolo: AIUTO - Jar segnati: IE no va, Netscape va!!?

Scusate se disturbo ma ho un problema che sembrerebbe senza soluzione:
ho realizzato un sistema di gestione conferenze via internet utilizzando
delle Applets col JDK 1.2.2 e le Swing. Alcune di esse hanno bisogno di
bucare la sand-box per cui le ho impacchettate in Jar (utilizzando il wizard
di Jbuilder 3) e le ho segnate con signjar utilizzando, per prova, un
certificato da me autogenerato. Dopo tutto questo lavoro lancio Explorer e
la finestra della plug-in Java mi dice:
Java(TM) Plug-in: Version 1.2.2.px
Using JRE version 1.2.2
User home directory = C:\Documenti e impostazioni\Giulio
Proxy Configuration: no proxy
JAR cache enabled.
load: class Presentation.GUISubmission.SubmissionApplet not found.
java.lang.ClassNotFoundException: java.io.FileNotFoundException:
C:\Documenti e
impostazioni\Giulio\Documenti\Ingdelsoftware\progetto\appletsjava\sito
congresso\Presentation\GUISubmission\SubmissionApplet.class (Impossibile
trovare il percorso specificato)
 at java.io.FileInputStream.open(Native Method)
 at java.io.FileInputStream.<init>(FileInputStream.java:68)
 at
sun.net.www.protocol.file.FileURLConnection.connect(FileURLConnection.java:7
2)
 at
sun.net.www.protocol.file.FileURLConnection.getInputStream(FileURLConnection
.java:136)
 at sun.applet.AppletClassLoader.getBytes(AppletClassLoader.java:228)
 at sun.applet.AppletClassLoader.access$1(AppletClassLoader.java:218)
 at sun.applet.AppletClassLoader$1.run(AppletClassLoader.java:141)
 at java.security.AccessController.doPrivileged(Native Method)
 at sun.applet.AppletClassLoader.findClass(AppletClassLoader.java:138)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:290)
 at sun.applet.AppletClassLoader.loadClass(AppletClassLoader.java:112)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
 at sun.applet.AppletClassLoader.loadCode(AppletClassLoader.java:377)
 at sun.applet.AppletPanel.createApplet(AppletPanel.java:508)
 at sun.plugin.AppletViewer.createApplet(AppletViewer.java:763)
 at sun.applet.AppletPanel.runLoader(AppletPanel.java:444)
 at sun.applet.AppletPanel.run(AppletPanel.java:282)
 at java.lang.Thread.run(Thread.java:479)
pechè mi lancia questa eccezzione !?  --> java.lang.ClassNotFoundException
preciso che ho scritto il codice HTML per richiamare l'applet come
specificato dall'help della Java Plug-In
<object classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93"
    width="515" height="470" align="baseline"
codebase="
http://java.sun.com/products/plugin/1.2.2/jinstall-1_2_2-win.cab#V
ersion=1,2,2,0"
<PARAM NAME="scriptable" VALUE="true">
<PARAM NANE=archive VALUE=submission.jar>
<param NAME="code" VALUE="Presentation.GUISubmission.SubmissionApplet">
<param NAME="java_codebase" VALUE=".">
<param NAME="type" VALUE="application/x-java-applet;version=1.2.2">
<param NAME="urlDB"
VALUE="jdbc:ids://
127.0.0.1:12/conn?dbtype=odbc&dsn='ContactDB
'">
<param NAME="urlFtp" VALUE="127.0.0.1">
<param NAME="port" VALUE="2001">
ed ho verificato tutte le path ecc...
ma non funziona!
Invece con Netscape funziona tutto correttamente caricandomi le classi e
richiedendo il permesso di bucare la sand-box.
Ma allora che dovrei fare!!!!!!!!!!!!!!!
Aiuto!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Grazie a tutti per la pazienza ad aver scaricato il messaggio, averlo letto.
A chi mi risponde un doppio grazie.
Ciao
Giulio

 Scusate se disturbo ma ho un problema che sembrerebbe senza soluzione:
purtroppo la soluzione e la spiegazione esiste...
su Explorer le classi devono essere impacchettate usando il tool Microsoft
"cabarc" che crea dei file .CAB e non .JAR. Il "pacchetto" CAB va poi firmato
con un certificato Authenticode 2 che puoi richiedere a Verisign o generare con
il tool Microsoft "signtool".
Inoltre, se l'applet deve bucare la sandbox devi richiedere dei permessi
all'utente utilizzando delle classi Microsoft specifiche, diverse dalle Netscape
Capabilities API.
Insomma, devi prevedere due versioni distinte della tua installazione, una per
Netscape e una per Explorer.
Se ti occorrono ulteriori chiarimenti chiedi pure.
Ciao

 purtroppo la soluzione e la spiegazione esiste...
meno male! grazie adesso scarico il tools java di Microsoft.
Ciao
Giulio