Newsgroup: it.comp.java
Titolo: Applet & Swing

Salve a tutti.
    Procedendo con lo sviluppo di applet per interfaccie, mi sono imabttuto
in un problema che ai più dovrebbe essere noto, ma che da principiante non
so risolvere.
Usando nelle applet componenti presi dal package Swing mi si presenta, nel
momento in cui l'aplet viene eseguita da un browser, una eccezione simile
alle seguenti:
Internet Explorer:
com.ms.security.SecurityExceptionEx[gui/MaintainData.<init>]:
java.io.IOException: bad path:
C:\Program Files\Apache
Group\Apache\htdocs\Santiago\javax\swing\JButton.class
 at com/ms/security/permissions/FileIOPermission.check
(FileIOPermission.java)
 at com/ms/security/PolicyEngine.deepCheck (PolicyEngine.java)
 at com/ms/security/PolicyEngine.checkPermission (PolicyEngine.java)
 at com/ms/security/StandardSecurityManager.chk
(StandardSecurityManager.java)
 at com/ms/security/StandardSecurityManager.checkRead
(StandardSecurityManager.java)
 at java/io/File.isDirectory (File.java)
 at sun/net/www/protocol/file/FileURLConnection.connect
(FileURLConnection.java)
 at sun/net/www/protocol/file/FileURLConnection.getInputStream
(FileURLConnection.java)
 at com/ms/vm/loader/ResourceLoader.getURLData (ResourceLoader.java)
 at com/ms/vm/loader/ResourceLoader.getCodebaseRelativeData
(ResourceLoader.java)
 at com/ms/vm/loader/ResourceLoader.getClassData (ResourceLoader.java)
 at com/ms/vm/loader/URLClassLoader.findClass (URLClassLoader.java)
 at com/ms/vm/loader/URLClassLoader.loadClass (URLClassLoader.java)
 at java/lang/ClassLoader.loadClassInternal (ClassLoader.java)
 at gui/MaintainData.<init> (MaintainData.java)
 at gui/MainApplet.<init> (MainApplet.java:20)
 at com/ms/applet/BrowserAppletFrame.newInstance (BrowserAppletFrame.java)
 at com/ms/applet/AppletPanel.processSentEvent (AppletPanel.java)
 at com/ms/applet/AppletPanel.processSentEvent (AppletPanel.java)
 at com/ms/applet/AppletPanel.run (AppletPanel.java)
 at java/lang/Thread.run (Thread.java)
java.lang.InstantiationException: gui/MainApplet
 at com/ms/applet/BrowserAppletFrame.newInstance (BrowserAppletFrame.java)
 at com/ms/applet/AppletPanel.processSentEvent (AppletPanel.java)
 at com/ms/applet/AppletPanel.processSentEvent (AppletPanel.java)
 at com/ms/applet/AppletPanel.run (AppletPanel.java)
 at java/lang/Thread.run (Thread.java)
Netscape Navigator:
Netscape Communications Corporation -- Java 1.1.5
Type '?' for options.
Symantec Java! ByteCode Compiler Version 210.065
Copyright (C) 1996-97 Symantec Corporation
# Verifier error gui/MaintainData.<init>(Ljava/applet/Applet;)V: Cannot find
class javax/swing/JButton
# Applet exception: error: java.lang.NoClassDefFoundError: gui/MaintainData
java.lang.NoClassDefFoundError: gui/MaintainData
  at java.lang.ClassLoader.resolveClass(Compiled Code)
* at java.lang.ClassLoader.loadClassInternal(Compiled Code)
  at gui.MainApplet.<init>(Compiled Code)
  at netscape.applet.DerivedAppletFrame$LoadAppletEvent.dispatch(Compiled
Code)
  at java.awt.EventDispatchThread$EventPump.dispatchEvents(Compiled Code)
  at java.awt.EventDispatchThread.run(Compiled Code)
  at
netscape.applet.DerivedAppletFrame$AppletEventDispatchThread.run(Compiled
Code)
Per Netscape sarebbe anche comprensibile (trattandosi di Navigator 4.08, che
non implementa Java 1.2). Ma perchè anche Internet Explorer?
Come si può risolvere il problema? Ho sentito parlare di un plug-in, di cosa
si tratta?
Oltretutto mi è sembrato di aver visto pagine in internet con componenti
avanzati, quali trees e giochetti vari, sicuramente con Navigator 4.08. Come
è possibile? Esiste qualche plug-in che si possa scaricare in modo più o
meno "indolore" da parte dell'utente che riallinea le JVM?
Molte domande, ma forse la risposta è più banale di quanto penso (spero).
Un saluto ed un ringraziamento a chi risponderà.
Fabrizio Sibeni

Non credo proprio che explorer puo' farti girare le swing a meno che non hai il
plug-in e modifichi il codice html per poterlo caricare.
Non ricordo la procedura ma sono differenti per explorer e netscape (credo dal
4.5 in su solo).
Per quello che ne so dovrebbe essere cosi'
Comunque netscape 6 funziona con java 2 ( peccato che e' ancora in versione
beta)
Fabrizio Sibeni ha scritto:


Se lo sviluppo e' per un ambiente chiuso puoi risolvere il problema abbassando
la sicurezza del browser per gli ambienti intranet.
Il problema e' che SWING cerca di impadronirsi della coda degli eventi grafici,
che appartengono al sistema.
quindi viene bloccata dal Security Manager.
Io avevo risolto il problema abbassando la sicurezza di IE per applet
provvvenienti da un sito all'interno della intranet aziendale.
Con Netscape mi sa che non si puo' fare.
comunque se l'ambiente e' chiuso, suggerisco il plug in.
Fra l'altro da javasoft scarichi il convertitore di html che ti da la
possibilita' di convertire per IE, per Netscape o per entrambi.
carlo
--
"Science is like sex: sometimes something useful comes out,
                      but that is not the reason we are doing it"
                                                -- Richard Feynman

 wrote in message
39CB12B9...@speaairportsystems.com...



--
