RMI & Mysql -> Fehler bei der Compilierung

Bud

Aktives Mitglied
Hallo Leute! ;)

Ich habe ein RMI-Testprogramm, das ohne mysql wunderbar funktioniert. Folgende Dateien gehören dazu:

Server:
SampleServer.java (interface)
SampleServerImpl.java

Client:
SampleServer.java (interface)
SampleClient.java


-- So und dann habe ich das ganze um eine mysql-Anbinung mittels jdbc erweitert. Wenn ich aber auf dem Server die Implementierung compilieren möchte, bekomme ich folgende Fehlermeldung:

root@vps:/home/admin/rmi# javac -classpath ./mysql-connector-java-5.1.18 SampleServerImpl.java
SampleServerImpl.java:12: cannot find symbol
symbol: class SampleServer
implements SampleServer
^
1 error
root@vps:/home/admin/rmi#

Und so sieht der Quelltext aus:

Java:
//-----------------------------------------------------------
// File: SampleServerImpl.java
//-----------------------------------------------------------

import java.rmi.*;
import java.rmi.server.*;
import java.rmi.registry.*;
import java.sql.*;


public class SampleServerImpl extends UnicastRemoteObject
                             implements SampleServer
{
  SampleServerImpl() throws RemoteException
  {
     super();
  }

  public int sum(int a,int b) throws RemoteException
  {
     return a + b;
  }

 public String sessionid(String user, String pw) throws RemoteException
 {
	String Ausgabe="";
		
		try {
			Class.forName("com.mysql.jdbc.Driver").newInstance(); // Klaeren, was passiert hier?
			Connection con=DriverManager.getConnection("jdbc:mysql://domain.de/database", "user", "pw");
			Statement stmt = con.createStatement();		// Statement initiieren	
			
			ResultSet rs=stmt.executeQuery("Select * from benutzer"); // Statement an Tabelle "benutzer" ausgefuehrt -> Alle anzeigen/speichern in "rs"			
			
			while (rs.next()) 
			{ 
				Ausgabe=Ausgabe+rs.getString("email")+" "+ rs.getString(4);
			}	
		} catch (Exception e){System.out.println("* Fehlermeldung -> "+e);}	

return Ausgabe;
 }


  public static void main(String args[])
  {
    //set the security manager
    try
      {
        System.setSecurityManager(new RMISecurityManager());

        //create a local instance of the object
        SampleServerImpl Server = new SampleServerImpl();

        //put the local instance in the registry
        Naming.rebind("SAMPLE-SERVER" , Server);

        System.out.println("Server waiting.....");
      }
    catch (java.net.MalformedURLException me)
      {
         System.out.println("Malformed URL: " + me.toString());
      }

    catch (RemoteException re)
      {
         System.out.println("Remote exception: " + re.toString());
      }

  }
}

Java:
import java.rmi.*;
import java.sql.*;

public interface SampleServer extends Remote
{
  public int sum(int a,int b)      throws RemoteException;
  public String sessionid(String user, String pw) throws RemoteException;
}

Die Compilierung von SampleServer.java funktioniert problemlos, nur bei die Implementierung bereitet mir Kopfschmerzen.

Was mache ich falsch?
 
Zuletzt bearbeitet:
S

SlaterB

Gast
du willst wirklich ein Programm, welches über Hello World oder meinetwegen auch 3 oder 4 oder in extremen Ausnahmesituationan auch 5 Code-Zeilen hinausgeht mit javac kompilieren statt einer IDE wie Eclipse?
naja, wenn du dann das javac nicht mal beherrschst kann eben genau sowas herauskommen

damit SampleServer gefunden wird, muss es im ClassPath mit dabei sein,
wenn du [c] -classpath ./mysql-connector-java-5.1.18 [/c]
angibst, ist nur genau das der ClassPath, du brauchst wahrscheinlich auch . im ClassPath, welches für das aktuelle Verzeichnis steht,
das Trennzeichen unter Linux sollte : sein, also vielleicht
[c] -classpath .:./mysql-connector-java-5.1.18 [/c]

Setting the class path
 
I

irgendjemand

Gast
du willst wirklich ein Programm, welches über Hello World oder meinetwegen auch 3 oder 4 oder in extremen Ausnahmesituationan auch 5 Code-Zeilen hinausgeht mit javac kompilieren statt einer IDE wie Eclipse?

sry ... den post find ich etwas lächerlich ...

ich compile selbst auch codes mit mehr als 20'000 zeilen und ganze projekte mit mehr als 50 solcher klassen über console ... und schaffe es sogar diese dann noch richtig in ein lauffähiges jar zu packen ... ohne das ich während der runtime auch nur eine exception wegen fehlenden resourcen bekomme ...

ist also durch aus möglich ... und eine IDE braucht mindestens genau so lange zum compilen über das system jdk wie über console ... da nimmt sich nichts ...
 
S

SlaterB

Gast
wer sich auskennt schafft auch über Konsole irgendwie ein Posting hier im Forum abzusetzen, und sei es per extra Programm,
Normalsterbliche, die nichtmal ClassPath kennen, landen dann eben bei Ergebnissen wie hier zu sehen,
sollten doch lieber IDE fürs Programmieren bzw. Web-Browser für Postings verwenden
 

Bud

Aktives Mitglied
du willst wirklich ein Programm, welches über Hello World oder meinetwegen auch 3 oder 4 oder in extremen Ausnahmesituationan auch 5 Code-Zeilen hinausgeht mit javac kompilieren statt einer IDE wie Eclipse?
naja, wenn du dann das javac nicht mal beherrschst kann eben genau sowas herauskommen

Oha. Stimmt, ich lasse es besser gleich. Dann lerne ich vielleicht auch nichts - aber dann mache ich auch nichts falsch.

Da der Server in einer virtuellen Maschine läuft und ich diese nur per SSH ansteuern kann, dachte ich dass für Testzwecke so etwas auch durchaus über die Konsole zu machen ist.

Dein Ton ist nicht besonders freundlich, aber Dein Tipp war gut. Danke!
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
L Strings an Server senden und in MYSQL speichern? Netzwerkprogrammierung 3
K MySQL Receiving Netzwerkprogrammierung 4
V Server / mehrere Clients / MySQL / Konzept Netzwerkprogrammierung 2
L Mit Java über PHP in MySQL anmelden (Login script) Netzwerkprogrammierung 3
R JDBC - Direktzugriff auf MySQL Netzwerkprogrammierung 15
B Netzwerkverkehroptimierung [mySQL SELECT] Netzwerkprogrammierung 5
B applets mit FTP/MySQL Netzwerkprogrammierung 22
D Offline App mit online MYSQL - DB verbinden Netzwerkprogrammierung 14
H Mysql port forwarding Netzwerkprogrammierung 5
T Java => Login mit MySQL Netzwerkprogrammierung 10
T HTTP Mysql Skript Netzwerkprogrammierung 3
R mehrere MySQL-Zugriffe Netzwerkprogrammierung 3
H MySQL übers Netzwerk Netzwerkprogrammierung 9
G Connection zu MySQL ohne ODBC Netzwerkprogrammierung 8
M RMI direkte Verbindung mit einer Mysql datenbank Netzwerkprogrammierung 13
S Verbindung zu MySQL Netzwerkprogrammierung 10
S Datenbankzugriff auf externe Mysql DB Netzwerkprogrammierung 9
G MySQL über Netzwerk --> Problem Netzwerkprogrammierung 13
S MySQL, PHP, Perl Support in einem Java HTTP Server? Netzwerkprogrammierung 7
K Threads/Server/telnet Fehler Netzwerkprogrammierung 2
X Netty TLS Authentifizierung Fehler Netzwerkprogrammierung 1
OnDemand API Aufruf besser steuern, wie Fehler vermeiden Netzwerkprogrammierung 20
V Ich finde den Fehler nicht... Netzwerkprogrammierung 2
A sporadischer Fehler beim Schreiben auf NAS Netzwerkprogrammierung 2
K Socket Netty Client wirft Fehler! Netzwerkprogrammierung 3
F HTTP Website parsen Fehler 403 Netzwerkprogrammierung 2
M Socket Verschlüsselte Kommunikation - Fehler Netzwerkprogrammierung 1
M Wo ist mein Fehler ? o: Netzwerkprogrammierung 4
D Komischer Fehler Readline() Netzwerkprogrammierung 7
CookieSoft Fehler bei Socket Netzwerkprogrammierung 4
C Fehler bei PDF-Download Netzwerkprogrammierung 5
M ActiveMQ Anfänger-Fehler Netzwerkprogrammierung 3
N Socket Fehler bei Streams Netzwerkprogrammierung 2
F Socket ImageIcon über Socket --> Fehler Netzwerkprogrammierung 14
M chat als applet umgeschrieben - unbekannter fehler :( Netzwerkprogrammierung 2
B Socket Daten empfangen funktioniert nicht richtig - wo liegt der Fehler? Netzwerkprogrammierung 7
L NullPointerException...finde den Fehler nicht Netzwerkprogrammierung 10
E einfache Frage: wie Fehler untersuchen mit Tomcat Netzwerkprogrammierung 5
R Fehler bei RMI in Verbidung mit JDBC Netzwerkprogrammierung 6
L RMI Programm beendet ohne Fehler sofort nach Start (Windows 2000) Netzwerkprogrammierung 7
R Server - Client - Fehler? Netzwerkprogrammierung 3
M SOAP Messaging Fehler Netzwerkprogrammierung 10
J RMI Fehler beim Proxy Netzwerkprogrammierung 2
B Fehler 401 bei http GET Netzwerkprogrammierung 2
H RMI Fehler: access denied Netzwerkprogrammierung 10
J Vom BufferedReader lesen -> hängt ohne Fehler,ohne Except Netzwerkprogrammierung 2
C irc client: Fehler 451 Netzwerkprogrammierung 12
G Heimnetzwerkchatprogramm: Fehler im Code Netzwerkprogrammierung 11

Ähnliche Java Themen


Oben