gemme ændringer i objekt i vektor
Hej,Jeg sidder her og nørder en lørdag aften og har endnu engang brug for HJÆLP !
Jeg har et program, hvor jeg laver en medlemsliste(en vektor), som jeg gemmer medlemmerne(instanser af PersonligeOplysninger-klassen)i. Dette fungerer ganske fint, og vektoren kan også gemmes og hentes via disk. Dog sker det, at når jeg ændrer oplysninger for et givent medlem, hvor bl.a status, kategori og klasse vælges via JComboBox, og forsøger at gemme ændringerne, så brokker kompileren sig, jf. nedenstående. Via System.out.println kan jeg se, at ændringerne registreres(div. set-metoder er anvendt i denne forbindelse), og jeg tror også, at ændringerne gemmes! Er det egentligt et problem, at kompileren viser NullPointerException, når systemet tilsyneladende fungerer fint?
Jeg ved ikke, om det kan skyldes mine JComboBoxe og JList, hvor medlemslisten gøres visuel, for det er henholdsvis metoderne: setSelectedValue og setListData, der umiddelbart er problemer med.
Jeg har en mistanke om, at det ville være hensigstmæssigt at anvende Iterator, når medlemslisten (en vektor som sagt) gemmes og hentes. Er det rigtigt?
Svar udbedes snarest muligt, idet programmet skal være færdigt senest på onsdag!
På forhånd rigtig mange tak ;-)
Tut
http://imv.au.dk/~ttut/eksperten/Ny%20mappe/Skydning/
Dette er et print af consollen:
....
aendrede oplysn
status er ændret til:Aktiv
kategori er ændret til:Senior
klasse er ændret til:1
....
java.lang.NullPointerException
at GuiController.valueChanged(GuiController.java:43)
at javax.swing.JList.fireSelectionValueChanged(JList.java:1318)
at javax.swing.JList$ListSelectionHandler.valueChanged(JList.java:1332)
at javax.swing.DefaultListSelectionModel.fireValueChanged(DefaultListSelectionModel.java:187)
at javax.swing.DefaultListSelectionModel.fireValueChanged(DefaultListSelectionModel.java:167)
at javax.swing.DefaultListSelectionModel.fireValueChanged(DefaultListSelectionModel.java:214)
at javax.swing.DefaultListSelectionModel.changeSelection(DefaultListSelectionModel.java:402)
at javax.swing.DefaultListSelectionModel.changeSelection(DefaultListSelectionModel.java:411)
at javax.swing.DefaultListSelectionModel.removeSelectionInterval(DefaultListSelectionModel.java:481)
at javax.swing.DefaultListSelectionModel.clearSelection(DefaultListSelectionModel.java:416)
at javax.swing.JList.clearSelection(JList.java:1577)
at javax.swing.JList.setModel(JList.java:1217)
at javax.swing.JList.setListData(JList.java:1248)
at GuiController.actionPerformed(GuiController.java:298)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1767)
at javax.swing.AbstractButton$ForwardActionEvents.actionPerformed(AbstractButton.java:1820)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:419)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:257)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:258)
at java.awt.Component.processMouseEvent(Component.java:5021)
at java.awt.Component.processEvent(Component.java:4818)
at java.awt.Container.processEvent(Container.java:1380)
at java.awt.Component.dispatchEventImpl(Component.java:3526)
at java.awt.Container.dispatchEventImpl(Container.java:1437)
at java.awt.Component.dispatchEvent(Component.java:3367)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:3214)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:2929)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:2859)
at java.awt.Container.dispatchEventImpl(Container.java:1423)
at java.awt.Window.dispatchEventImpl(Window.java:1566)
at java.awt.Component.dispatchEvent(Component.java:3367)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:445)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:190)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:144)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:130)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:98)
