Får en NullPointerException
Jeg får en NullPointerException når jeg forsøger at få 2 classer til at arbejde sammen via ActionListener??OpretGæst:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;
import java.util.*;
import java.text.*;
public class OpretGaest extends JFrame implements ActionListener
{
boolean inAnApplet = true;
final boolean shouldFill = true;
final boolean shouldWeightX = true;
JButton opret,søg,opdater,afslut;
JTextField gæstNr,forNavn,efterNavn,adresse,telefon,idNr,firma,cvr,rabat;
JComboBox IDtype;
String betalingsFormer[] = {"Dankort","Kontant","Regning"};
JRadioButton privatGæst,erhvervsGæst;
Gæst hentGæst;
public OpretGaest()throws IOException {
Container contentPane = getContentPane();
GridBagLayout gridbag = new GridBagLayout();
GridBagConstraints c = new GridBagConstraints();
contentPane.setLayout(gridbag);
c.fill = GridBagConstraints.HORIZONTAL;
JLabel skriv = new JLabel("Gæste Nr");
c.insets = new Insets(0,0,0,0);
c.gridx = 0;
c.gridy = 0;
gridbag.setConstraints(skriv, c);
contentPane.add(skriv);
JLabel skriv2 = new JLabel("Fornavn");
c.insets = new Insets(10,0,0,0);
c.gridx = 0;
c.gridy = 1;
gridbag.setConstraints(skriv2, c);
contentPane.add(skriv2);
JLabel skriv3 = new JLabel("Efternavn");
c.insets = new Insets(10,0,0,0);
c.gridx = 0;
c.gridy = 2;
gridbag.setConstraints(skriv3, c);
contentPane.add(skriv3);
JLabel skriv4 = new JLabel("Adresse");
c.insets = new Insets(10,0,0,0);
c.gridx = 0;
c.gridy = 3;
gridbag.setConstraints(skriv4, c);
contentPane.add(skriv4);
JLabel skriv5 = new JLabel("Telefon");
c.insets = new Insets(10,0,0,0);
c.gridx = 0;
c.gridy = 4;
gridbag.setConstraints(skriv5, c);
contentPane.add(skriv5);
gæstNr = new JTextField(10);
c.insets = new Insets(0,20,0,0);
c.gridx = 1;
c.gridy = 0;
gridbag.setConstraints(gæstNr, c);
contentPane.add(gæstNr);
gæstNr.setEditable(false);
forNavn = new JTextField(10);
c.insets = new Insets(10,20,0,0);
c.gridx = 1;
c.gridy = 1;
gridbag.setConstraints(forNavn, c);
contentPane.add(forNavn);
forNavn.addActionListener(this);
efterNavn = new JTextField(10);
c.insets = new Insets(10,20,0,0);
c.gridx = 1;
c.gridy = 2;
gridbag.setConstraints(efterNavn, c);
contentPane.add(efterNavn);
efterNavn.addActionListener(this);
adresse = new JTextField(10);
c.insets = new Insets(10,20,0,0);
c.gridx = 1;
c.gridy = 3;
gridbag.setConstraints(adresse, c);
contentPane.add(adresse);
adresse.addActionListener(this);
telefon = new JTextField(10);
c.insets = new Insets(10,20,0,0);
c.gridx = 1;
c.gridy = 4;
gridbag.setConstraints(telefon, c);
contentPane.add(telefon);
telefon.addActionListener(this);
opret = new JButton("Opret");
c.insets = new Insets(0,300,0,0);
c.gridx = 2;
c.gridy = 0;
gridbag.setConstraints(opret, c);
contentPane.add(opret);
opret.addActionListener(this);
afslut = new JButton("Afslut");
c.insets = new Insets(10,300,0,0);
c.gridx = 2;
c.gridy = 1;
gridbag.setConstraints(afslut, c);
contentPane.add(afslut);
afslut.addActionListener(this);
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
if (inAnApplet) {
dispose();
} else {
System.exit(0);
}
}
});
}
public void actionPerformed( ActionEvent e )
{
if( e.getSource() == opret );
{
gæstNr.setText(""+hentGæst.tællerAntalGæster());
hentGæst.opretGæst(hentGæst.tællerAntalGæster(),forNavn.getText(),efterNavn.getText(),adresse.getText(), new Integer( telefon.getText() ).intValue() );
}
}
}
---------------------------------------------------
Gæst:
import java.util.*;
class Gæst
{
int gæstNr;
String fornavn,efternavn,adresse;
int tlf;
Hashtable gæsteRegistre = new Hashtable();
Gæst(int gNr,String f,String ef,String ad,int t)
{
gæstNr = gNr;
fornavn = f;
efternavn = ef;
adresse = ad;
tlf = t;
}
int tællerAntalGæster()
{
int tæller=0;
for(Enumeration e = gæsteRegistre.keys(); e.hasMoreElements();)
{
String s = (String) e.nextElement();
Gæst g = (Gæst) gæsteRegistre.get(s);
tæller++;
}
return tæller+1;
}
void seOprettedeGæster()
{
Gæst nyGæst=null;
for(Enumeration e = gæsteRegistre.keys(); e.hasMoreElements();)
{
String s = (String) e.nextElement();
nyGæst = (Gæst) gæsteRegistre.get(s);
//d.println(""+nyGæst);
}
// if(nyGæst == null) d.println("Ingen gæster er oprettet på Hotel Lazy");
}
void opretGæst(int antalGæster ,String fornavn,String efternavn,String adresse,int tlf)
{
Gæst g = new Gæst(antalGæster,fornavn,efternavn,adresse,tlf);
if(gæsteRegistre.containsKey(fornavn+efternavn+adresse))
{
// d.println("Samme gæst er allerede oprettet før");
return;
}
else
{
gæsteRegistre.put(""+fornavn+efternavn+adresse,g);
// d.println("Gæst oprettet");
}
}
public String toString()
{
return "Gæste Nr :"+gæstNr+" Fornavn :"+fornavn+" Efternavn :"+efternavn+
" Adresse :"+adresse+" TLF :"+tlf;
}
}
