Login Fenster

Zep

Mitglied
Hey, ich bin dabei ein Loginfenster zu Bauen, aber irgendwie bekomme ich das einfach nicht zum
laufen. Leider kann ich den Fehler aber einfach nicht finden. Dachte erst das es an der Datenbank abfrage liegt, habe diese daher auch mal verändert, aber der Fehler bleibt vorhanden.
Würde mich über die ein oder andere Idee oder gedankenstütze freuen.





Programm:
[JAVA=19]
public class Login extends JDialog{

public JTextField nameInput = new JTextField("");
public JPasswordField passwordInput = new JPasswordField("");


public void search(String name, String password){

ResultSet a= gcf.getDB().executeQuery("SELECT * FROM customer");

try{
a.next();
//Prüfen ob daten I.O. -> Hauptfenster erzeugen



} catch (Exception e) {

}
}

public Login(){

setLayout(null);
setResizable(false);
setModalityType(ModalityType.APPLICATION_MODAL);
setSize(400,250);
setLocationRelativeTo(null);
ImageIcon icon;
icon = new ImageIcon("../images/icon.png");
setIconImage(icon.getImage());


addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {System.exit(0);}
});
ImageIcon logo = null;
logo = new ImageIcon("../images/logo.png");
JLabel logolabel = new JLabel(logo);
logolabel.setBounds( 0, 0,400,80);
JButton ok = new JButton( "OK" );
ok.setBounds( 160, 160, 60,20);
ok.addActionListener(new ActionListener() {
@Override public void actionPerformed(ActionEvent e) {

search(nameInput.getText(),new String(passwordInput.getPassword()));

//new MainFrame();//setVisible(false);
}
});
JButton done = new JButton( "Abbruch" );
done.setBounds( 240, 160, 100,20);
done.addActionListener(new ActionListener() {
@Override public void actionPerformed(ActionEvent e) {
System.exit( 0 );
}
});
JLabel nameText = new JLabel("Benutzer:");
nameText.setBounds( 80, 100, 60,20);
JLabel passwordText = new JLabel("Passwort:");
passwordText.setBounds( 80, 130, 60,20);
nameInput.setBounds( 160, 100, 180,20);
passwordInput.setBounds( 160, 130, 180,20);
add(logolabel);
add(nameText);
add(this.nameInput);
add(passwordText);
add(this.passwordInput);
add(ok);
add(done);
setVisible(true);
}
}


[/code]

Fehlerausgabe:
Code:
Exception occurred during event dispatching:
java.lang.NullPointerException
	at getpoint.Login.search(Login.java:27)
	at getpoint.Login$2.actionPerformed(Login.java:64)
	at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
	at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
	at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
	at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
	at java.awt.Component.processMouseEvent(Unknown Source)
	at javax.swing.JComponent.processMouseEvent(Unknown Source)
	at java.awt.Component.processEvent(Unknown Source)
	at java.awt.Container.processEvent(Unknown Source)
	at java.awt.Component.dispatchEventImpl(Unknown Source)
	at java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
	at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
	at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
	at java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.awt.Window.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.awt.EventQueue.access$000(Unknown Source)
	at java.awt.EventQueue$1.run(Unknown Source)
	at java.awt.EventQueue$1.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
	at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue$2.run(Unknown Source)
	at java.awt.EventQueue$2.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.awt.Dialog$1.run(Unknown Source)
	at java.awt.event.InvocationEvent.dispatch(Unknown Source)
	at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.awt.EventQueue.access$000(Unknown Source)
	at java.awt.EventQueue$1.run(Unknown Source)
	at java.awt.EventQueue$1.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
	at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue$2.run(Unknown Source)
	at java.awt.EventQueue$2.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.run(Unknown Source)
 
Zuletzt bearbeitet von einem Moderator:
Eigentlich steht ja schon alles in der Fehlermeldung! Es ist auch taktisch unklug hier Code einzustellen der nicht der vollständige/korrekte ist, der die Meldung verursacht 🙂
Was z.B. ist gcf? Nirgends deklariert / oder ist das etwa eine Klasse? ;(
 
Der Fehler und der genaue Ort wird dir ja angezeigt:
java.lang.NullPointerException
at getpoint.Login.search(Login.java:27)

Keine Ahnung, ob das diese Codezeile 27 bei dir ist, aber was ist denn
Code:
gcf
, also wo kommt das her?
Java:
ResultSet a= gcf.getDB().executeQuery("SELECT * FROM customer");
 
gcf ist ein objekt was die datenbank, sprache, und div andere objekte zentrall hält.
Der Fehler der da steht bringt mich aber nicht weiter, die Datenbank abfrage mache ich in nen haufen anderen datein nur hier wird gemeckert.
In jeden anderen Datei laufen alle Datenbankabfragen ohne Problemme das ich das Programm so langsam aber abschliessen will, wollte ih jetzt die Datei noch sauber und Funktionsfähig machen.

hier noch der erste teil der datei
Java:
package getpoint;


import getpoint.gcf.*;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JLabel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
 
Der Fehler (NullPointerException) sagt dir aus, dass ein Objekt null ist, also nicht existiert oder noch nicht erstellt wurde. Vermutlich ist es gcf. Kannst ja mal gcf auf der Konsole testweise ausgeben und schauen, ob da null rauskommt.
 
Zuletzt bearbeitet von einem Moderator:
Oh man, da war der richtige schubser 🙂
Habe jetzt noch mal geschaut wo ich mein LoginFenster erzeugt habe. Hatte das zum Testen mal in die gcf klasse verschoben.
deshalb hat er so nicht gemeckert aber das objekt nicht gefunden.
Nachdem es wieder an der richtigen stelle erzeugt wird, geht es auch wieder.
Thx
 

Zurück
Oben