Applet + MySQL

Status
Nicht offen für weitere Antworten.

DonJure

Bekanntes Mitglied
Den Treiber habe ich geschaft zum laden.
Leider habe ich immer noch einen Fehler.
Woran könnte es liegen?


Code:
void save(){
		 try {
	        Class.forName("com.mysql.jdbc.Driver");	        	      
	      }
	      catch (ClassNotFoundException sqle) {
	        JOptionPane.showMessageDialog(null, sqle.getMessage(),
	        		"Fehler1",JOptionPane.ERROR_MESSAGE);}
	      try{
	      	cn = DriverManager.getConnection("jdbc:mysql://localhost:3306/" +sDB, sUser, sPass);
	      	st = cn.createStatement();  
	      }
	      catch(SQLException sqle){
	      	JOptionPane.showMessageDialog(null,  sqle.getMessage(),
	      			"Fehler2",                   
                    JOptionPane.ERROR_MESSAGE);
	      	}
	}

Fehler Hier
 
Naja. Mit der Suchfunktion hab ich mehr Fragen als Antworten zu dem Thema Signierung gefunden, aber einiges ist schon dabei. 🙂

@DonJure:
Nochetwas ist mir aufgefallen. Du wirst die Datenbank nicht mit 127.0.0.1:3306 erreichen, da das Applet auf einem entfernten Computer läuft und nicht auf dem Server.
 
Hallo,

danke schon mal für die schnelle Hilfe.
Na klar habe ich die Suchfunktion benutzt nur wußte ich bis gerade nicht dass ich dass Applet signieren muss. Nun weiß ich es ja und habe direkt eine Frage. Also die Suchfunktion hat mir ein Programm gezeigt, welches ich schon seit längerem benutze. Nur ist mir dabei nicht aufgefallen,dass man damit signieren kann 🙂 (Jarkive)- Jetzt habe ich das Problem dass ich das Passwort nicht kenne - in der Hilfe steht dass mann in der Dos-Konsole diesen Befehl eingeben soll "keytool -storepasswd" da zeigt er mir aber an dass er den Befehl nicht kennt. Hat jmd eine Idee???
 
Du hast Java/bin nicht in die PATH-Variable aufgenommen. Entweder du holst das nach oder verwendest den absoluten Pfad zu keytool ($JAVA_HOME/bin/keytool).
 
@DonJure:
Nochetwas ist mir aufgefallen. Du wirst die Datenbank nicht mit 127.0.0.1:3306 erreichen, da das Applet auf einem entfernten Computer läuft und nicht auf dem Server.

noe:
Auf MySQL-Server kann man nur dann zugreifen, wenn das Programm/die Datenbankschnittstelle auf dem gleichen Server liegt wie die Datenbank, aus diesem Grund funktioniert der Zugriff mit 127.0.0.1 / localhost, denn das Program darf nirgends anders liegen.
 
Hmm irgendwie ist dass alles komisch.
Habe nun mein applet signiert. Funzt natürlich nicht, da mein Browser diese Signierung nicht kennt.
Jetzt habe ich mal eine andere Frage. Gibt es eine andere möglichkeit um Daten zu speichern? Damit
meine ich - dass nicht jeder user sich erst ein zertifikat herunterladen muss?
 
Muss er normalerweise nicht. Hat der Browser Standardeinstellungen, muss er lediglich einmal beim ersten "Kontakt" mit dem Zertifikat sein Okay geben. Ansonsten kann man für Hartnäckige noch nen Link die .crt-Datein angeben, so dass mit zwei Mausklicks das Zertifikat installiert werden kann.

Andere Möglichkeiten gibt es keine.
 
Hallo,
leider habe ich nun immernoch dieses Problem.
Ich glaub die Syntax in dem Code stimmt nicht.
Den Link findet ihr hier zum Problem.

Code:
String url = "jdbc:mysql://localhost:3306/";

Code:
public void verbindung(){
		try {
	           Class.forName("com.mysql.jdbc.Driver");                   
	         }
	         catch (ClassNotFoundException sqle) {
	           JOptionPane.showMessageDialog(null, sqle.getMessage(),
	                 "Fehler1",JOptionPane.ERROR_MESSAGE);}
	         try{
	            conn = DriverManager.getConnection(url+sDB, sUser, sPass);
	            st = conn.createStatement();	            
	         }
	         catch(SQLException sqle){
	            JOptionPane.showMessageDialog(null,  sqle.getMessage(),
	                  "Fehler2", JOptionPane.ERROR_MESSAGE);	                    
	            } 
	}
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben