|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: May 2005
Città: Roma
Messaggi: 7938
|
[JAVA] Problema con i path all'interno del jar
allora, ho messo all'interno della cartella src i miei vari file, ai quali devo accedere per compilare alcuni campi:
questo è il codice: Codice:
private void compilaSoci() { { FileReader fileReader = null; try { fileReader = new FileReader(new File(getClass().getResource("/src/archive/socio.txt").toURI())); // fileReader = new FileReader(new File("src/archive/socio.txt")); BufferedReader buffer = new BufferedReader(fileReader); String linea = buffer.readLine(); while (linea != null) { this.socioComboBox.addItem(linea); linea = buffer.readLine(); } } catch (URISyntaxException ex) { Logger.getLogger(PannelloInserimentoAssociati.class.getName()).log(Level.SEVERE, null, ex); } catch (IOException ex) { Logger.getLogger(PannelloAggiungiServizio.class.getName()).log(Level.SEVERE, null, ex); } finally { try { fileReader.close(); } catch (IOException ex) { Logger.getLogger(PannelloInserimentoAssociati.class.getName()).log(Level.SEVERE, null, ex); } } } Codice:
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException at view.PannelloInserimentoAssociati.compilaSoci(PannelloInserimentoAssociati.java:90) at view.PannelloInserimentoAssociati.<init>(PannelloInserimentoAssociati.java:43) at view.PannelloGeneraleAssociati.addAssociatoActionPerformed(PannelloGeneraleAssociati.java:174) at view.PannelloGeneraleAssociati.access$500(PannelloGeneraleAssociati.java:26) at view.PannelloGeneraleAssociati$6.actionPerformed(PannelloGeneraleAssociati.java:125) at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995) at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318) at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387) at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242) at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236) at java.awt.Component.processMouseEvent(Component.java:6288) at javax.swing.JComponent.processMouseEvent(JComponent.java:3267) at java.awt.Component.processEvent(Component.java:6053) at java.awt.Container.processEvent(Container.java:2041) at java.awt.Component.dispatchEventImpl(Component.java:4651) at java.awt.Container.dispatchEventImpl(Container.java:2099) at java.awt.Component.dispatchEvent(Component.java:4481) at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577) at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238) at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168) at java.awt.Container.dispatchEventImpl(Container.java:2085) at java.awt.Window.dispatchEventImpl(Window.java:2478) at java.awt.Component.dispatchEvent(Component.java:4481) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:643) at java.awt.EventQueue.access$000(EventQueue.java:84) at java.awt.EventQueue$1.run(EventQueue.java:602) at java.awt.EventQueue$1.run(EventQueue.java:600) at java.security.AccessController.doPrivileged(Native Method) at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87) at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98) at java.awt.EventQueue$2.run(EventQueue.java:616) at java.awt.EventQueue$2.run(EventQueue.java:614) at java.security.AccessController.doPrivileged(Native Method) at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87) at java.awt.EventQueue.dispatchEvent(EventQueue.java:613) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161) at java.awt.EventDispatchThread.run(EventDispatchThread.java:122) nel caso in cui il codice sia quello commentato funziona senza problemi, nell'altro no. Ma ovviamente per usare l'applicazione su macchine diverse devo usare la prima soluzione, ovvero quella con path "assoluti". ora, chi mi aiuta, sò che la soluzione è davanti ai miei occhi,, ma al momento non riesco a vederla!!!
__________________
My gaming placement |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: May 2005
Città: Roma
Messaggi: 7938
|
per ora ho risolto lasciando le immagini all0interno del JAR, che con il getresource funziona senza problemi, mentre i file "archivio" che devo leggere e modificare li ho messi nello stesso path del jar. ma vorrei evitarlo per impedire manipolazioni esterne. quindi accetto consigli su come inserire gli archivi all'interno del jar e modificarli.
grazie
__________________
My gaming placement |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 05:12.