Salve ragazzi, ho un nuovo problema: dovrei creare un file XML a partire da alcuni dati inseriti run-time da una finestra.
Dispongo delle classi per scrivere il file XML a partire da un Document, ma ho dei problemi proprio con la creazione del document, problemi che si verificano non al momento della compilazione ma dopo l'inserimento dei dati nella finestra. Ecco il codice :
P.S. La creazione e il riempimento del Document sono gestite all'interno dell'actionPerformed di un bottone



public void actionPerformed(ActionEvent actionEvent)
{
//ottengo le stringhe da un JComboBox e da dueTextField

String radice = (String)Menu.getSelectedItem();
String figlio1 = Cognome.getText();
String figlio2 = Matricola.getText();

//creo il document vuoto
try
{
DocumentBuilderFactory factory =DocumentBuilderFactory.newInstance();
factory.setValidating(false);
Document doc = factory.newDocumentBuilder().newDocument();
}

catch (Exception e)
{
System.out.println("Errore!!");
}



//riempio il document

Element root = doc.createElement(radice);
doc.appendChild(root);
Element child1 = doc.createElement (figlio1);
Element child2 = doc.createElement (figlio2);

}

Gli errori che mi dà run time dopo la pressione del button sono:

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at Finestra.actionPerformed(Finestra.java:120)
at javax.swing.AbstractButton.fireActionPerformed(Abs tractButton.java:1849)
at javax.swing.AbstractButton$Handler.actionPerformed (AbstractButton.java:2169)
at javax.swing.DefaultButtonModel.fireActionPerformed (DefaultButtonModel.java:420)
at javax.swing.DefaultButtonModel.setPressed(DefaultB uttonModel.java:258)
at javax.swing.plaf.basic.BasicButtonListener.mouseRe leased(BasicButtonListener.java:234)
at java.awt.Component.processMouseEvent(Component.jav a:5488)
at javax.swing.JComponent.processMouseEvent(JComponen t.java:3126)
at java.awt.Component.processEvent(Component.java:525 3)
at java.awt.Container.processEvent(Container.java:196 6)
at java.awt.Component.dispatchEventImpl(Component.jav a:3955)
at java.awt.Container.dispatchEventImpl(Container.jav a:2024)
at java.awt.Component.dispatchEvent(Component.java:38 03)
at java.awt.LightweightDispatcher.retargetMouseEvent( Container.java:4212)
at java.awt.LightweightDispatcher.processMouseEvent(C ontainer.java:3892)
at java.awt.LightweightDispatcher.dispatchEvent(Conta iner.java:3822)
at java.awt.Container.dispatchEventImpl(Container.jav a:2010)
at java.awt.Window.dispatchEventImpl(Window.java:1774 )
at java.awt.Component.dispatchEvent(Component.java:38 03)
at java.awt.EventQueue.dispatchEvent(EventQueue.java: 463)
at java.awt.EventDispatchThread.pumpOneEventForHierar chy(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForHierarch y(EventDispatchThread.java:163)
at java.awt.EventDispatchThread.pumpEvents(EventDispa tchThread.java:157)
at java.awt.EventDispatchThread.pumpEvents(EventDispa tchThread.java:149)
at java.awt.EventDispatchThread.run(EventDispatchThre ad.java:110)

Grazie.