Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2005
    Messaggi
    104

    richiamare oggetti di un altra classe e un oggetto JFileChooser in JApplet

    Ho questi 2 problemi con la mia JApplet:

    il primo è richimare il costruttore di un'altra classe nella mia JApplet.
    Questo è il codice:

    import java.awt.*;
    import javax.swing.*;
    import java.awt.event.*;
    import java.net.*;
    import java.io.*;

    public class appletFtp extends JApplet implements ActionListener{
    JButton invia, aggiorna;
    JLabel testa, indirizzo, nomeUtente, password, etichettaDir;
    JTextField ind, user, passwd;
    java.awt.List directoryRemota;
    public static JFileChooser fileChooser;
    public static ftpWrapper ftp = new ftpWrapper();

    in compilazione funziona tutto, ma quando poi faccio partire la pagina la Console Java mi da
    il seguente errore :

    java.lang.ExceptionInInitializerError
    at sun.reflect.NativeConstructorAccessorImpl.newInsta nce0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInsta nce(Unknown Source)
    at sun.reflect.DelegatingConstructorAccessorImpl.newI nstance(Unknown Source)
    at java.lang.reflect.Constructor.newInstance(Unknown Source)
    at java.lang.Class.newInstance0(Unknown Source)
    at java.lang.Class.newInstance(Unknown Source)
    at sun.applet.AppletPanel.createApplet(Unknown Source)
    at sun.plugin.AppletViewer.createApplet(Unknown Source)
    at sun.applet.AppletPanel.runLoader(Unknown Source)
    at sun.applet.AppletPanel.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
    Caused by: java.security.AccessControlException: access denied (java.lang.RuntimePermission accessClassInPackage.sun.net.ftp)
    at java.security.AccessControlContext.checkPermission (Unknown Source)
    at java.security.AccessController.checkPermission(Unk nown Source)
    at java.lang.SecurityManager.checkPermission(Unknown Source)
    at java.lang.SecurityManager.checkPackageAccess(Unkno wn Source)
    at sun.applet.AppletSecurity.checkPackageAccess(Unkno wn Source)
    at sun.applet.AppletClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClassInternal(Unknown Source)
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(Unknown Source)
    at java.security.SecureClassLoader.defineClass(Unknow n Source)
    at sun.applet.AppletClassLoader.findClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.applet.AppletClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClassInternal(Unknown Source)
    at appletFtp.<clinit>(appletFtp.java:17)
    ... 11 more

    la riga 17 è quella in cui dichiaro l'oggetto public static ftpWrapper ftp = new ftpWrapper();

    il secondo problema è il seguente:

    public void init(){
    this.setLayout(null);
    this.setSize(300, 300);
    ...
    invia = new JButton("Invia");
    invia.setBounds( inviaX, inviaY, largInv, altezza);
    invia.setForeground(Color.DARK_GRAY);
    invia.addActionListener(this);
    this.add(invia);
    ...
    ...
    }


    public void actionPerformed (ActionEvent e) {
    fileChooser = new JFileChooser();
    int response = fileChooser.showOpenDialog(this);
    if(response==JFileChooser.APPROVE_OPTION) {
    try {
    //le f = fileChooser.getSelectedFile();
    //ader in = new FileReader(f);
    //Open=true;
    invia.setForeground(Color.BLUE);
    }
    catch(Exception e1){}
    }
    }

    ho provato e l'evento viene generato ma non apre il fileChooser

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    il primo errore è chiaro: il security manager ti ha dato il 2 di picche... normale visto che le applet di norma (a meno che non siano esplicitamente autorizzate, il che vuol dire fornirle di un certificato o firma digitale) non aprono socket e non ravanano nei file-system delle macchine, nè client nè server su cui sono ospitate... sul server hanno il "potere" di ravanare nella loro directory e nelle sottodirectory radicate alla cartella dove risiedono.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2005
    Messaggi
    104
    capito... quindi da qualsiasi parte la giro devo fornire il certificato per aprire una connessione ftp... come si fanno questi certificati???
    ma perchè non mi visualizza il filechooser????????

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    il filechooser penso non sia visualizzato per lo stesso identico motivo... se ci pensi un attimo, quando apri un file chooser va nella cartella del sistema specificata o nella $HOME, il che vuol dire che l'applet dovrebbe poter uscire dalla sua sandbox. PEr quanto riguarda la firma delle applet mi pare ci sia un mio post (o comunque un post) qui sul forum
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  5. #5
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320

    Moderazione

    Ho riadattato il titolo della discussione, dato che solo l'ultima parte aveva a che fare con il problema reale.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.