Salve a tutti, vi posto subito la parte di codice relativa al problema, è una parte del main:
Sto lavorando con eclipse e lanciando il programma da lì non ho nessun problema, nel senso che i due filechooser vengono visualizzati correttamente uno dopo l'altro. Ma quando esporto in jar mi si presenta il seguente problema: compare correttamente il primo jfilechooser, compare il dialog di avvenuta estrazione, ma dopo questo si blocca tutto. Il secondo filechooser non compare e sono costretto ad intervenire sul task manager ed interrompere il processo javaw.exe. La cosa strana è che a volte tutto funziona correttamente, poi riprovo e niente.codice:JFileChooser fileChooser = new JFileChooser( (new File(".")).getAbsolutePath() ); fileChooser.setDialogTitle("Selezionare il file html con i nani"); HtmlFilter filtroFileHtml = new HtmlFilter(); fileChooser.addChoosableFileFilter(filtroFileHtml); int response = fileChooser.showOpenDialog(null); File f = null; if(response == JFileChooser.APPROVE_OPTION) { f = fileChooser.getSelectedFile(); if(f != null){ try{ stringaNaniEstratti = grep(f); if(stringaNaniEstratti != "") JOptionPane.showMessageDialog(null, "Estrazione avvenuta."); else{ JOptionPane.showMessageDialog(null, "Estrazione fallita.", "Attenzione!", JOptionPane.WARNING_MESSAGE); System.exit(0); } }catch (IOException x){ System.err.println(f + ": " + x); } } } else if(response == JFileChooser.CANCEL_OPTION){ System.exit(0); } fileChooser.setDialogTitle("Inserire il nome del file pdf che conterrà i nani salvati"); fileChooser.removeChoosableFileFilter(filtroFileHtml); fileChooser.addChoosableFileFilter(new PdfFilter()); fileChooser.setSelectedFile(new File(Config.PDF_NAME)); response = fileChooser.showSaveDialog(null); f = null; if(response == JFileChooser.APPROVE_OPTION) { f = fileChooser.getSelectedFile(); if(f != null){ if(f.exists()){ Object[] options = {"Sì", "No"}; int n = JOptionPane.showOptionDialog(null, "Attenzione! Il file è già esistente," + " vuoi sovrascriverlo?", "File esistente", JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.WARNING_MESSAGE, null, options, options[1]); if(n == 0) writePDF(stringaNaniEstratti, f.getAbsolutePath()); } else writePDF(stringaNaniEstratti, f.getAbsolutePath()); } } else if(response==JFileChooser.CANCEL_OPTION){ System.exit(0); }![]()
Grazie per l'attenzione.
![]()

Rispondi quotando