# Derby auf Server



## CMTuT200 (2. Aug 2014)

Hallo liebe Community,
ich habe mehrere (hoffentlich) kleine Probleme:
1. Ich habe ein kleines Programm mit JavaDB geschrieben, welches einfach nur eine neue Datenbank, mit  einer neuen Tabelle und ein paar Einträgen anlegt. Solange ich es in Eclipse ausführe funktioniert alles einwandfrei, sobald ich es aber exportiere, gibt es mir nichtmal mehr die Errors aus. Dies könnte evtl. mit meinem 2. Problem zusammenhängen.
2. Ich habe mein Programm für 1. geschrieben um für ein Plugin für meinen Server zu üben. Bei diesem bekomme ich folgenden Error: No suitable driver found for jdbc:derby:time und wenn ich danach eine Datenbank erzeugen will: No suitable driver found for jdbc:derby:time;create=true{user, password}, ich habe den Java Build Path aber richtig in Eclipse definiert, so wie bei 1. und da funktioniert es ja auch nicht nach dem exportieren.
3. Wenn ich dieses Plugin dann auf einen Server hochlade, wie finde ich da den Link zum Treiber??

Ich hoffe diese Fragen sind nicht allzu dumm und wurden nicht schon öfters gestellt, habe aber nichts der gleichen im WWW gefunden 

Danke für eure Hilfe,
cmtut


----------



## JavaMeister (2. Aug 2014)

Zu 1) Kein Fehler. Keine Hilfe.

Zu 2) Ein häufiger Fehler. Dein Buildpath muss in Eclipse korrekt sein und auch im Classpath später nach dem Deployment.

Zu 3) Siehe 2.


----------



## CMTuT200 (3. Aug 2014)

Deine Antwort hat mir jetzt leider gar nicht geholfen. Bei 1) muss es irgenteinen Fehler geben, denn in Eclipse funktioniert das Programm, also ist der Pfad richtig definiert, sowohl bei 1) als auch bei 2), denn ich habe den selben Pfad benutzt, der auch zum Treiber führt, solange ich es in Eclipse ausführe. Nur warum funktioniert es auserhalb von Eclipse nicht, denn der Pfad müsste doch eigentlich der selbe sein?! Und wie kann ich das mit dem Server lösen? Ich habe ein Plugin gefunden, in dem der Class-Path in einer MANIFEST.MF wie folgt definiert wurde: 

```
Class-Path: ../lib/h2.jar ../lib/mysql.jar ../lib/sqlite.jar ../lib/po
 stgresql.jar ../lib/h2db.jar ../lib/mysql-connector-java-bin.jar ../l
 ib/sqlite-jdbc.jar ../lib/postgresql.jdbc4.jar ../h2.jar ../mysql.jar
  ../sqlite.jar ../postgresql.jar ../h2db.jar ../mysql-connector-java-
 bin.jar ../sqlite-jdbc.jar ../postgresql.jdbc4.jar
```
Aber wie kann ich den Class-Path in Eclipse so definieren und nicht in einer .classpath?
Und welcher Pfad verweist dort oben auf den derby treiber, den ich brauche (Plugin kann auch mit derby arbeiten)? Und was bedeutet das ".."... 
Ich bin einfach zeimlich verwirrt, denn ich habe keinen Plan, warum auch immer das Programm den Treiber nicht findet, wenn ich es exportiert habe und irgentwie kann mir scheinbar auch keiner helfen...
Trotzdem danke für deine Antwort JavaMeister...


----------



## JavaMeister (3. Aug 2014)

Sorry, aber wie soll man Dir helfen?

Ich könnte Dir sagen, dass ".." Parent Folder bedeutet. Aber hätte man auch googeln können. 

Wie man den Classpath in einer späteren Anwendung konfiguriert, müsste man auch googeln. Die .classpath Datei gehört zu eclipse und nicht zu java.


```
Ich bin einfach zeimlich verwirrt, denn ich habe keinen Plan, warum auch immer das Programm den Treiber nicht findet, wenn ich es exportiert habe und irgentwie kann mir scheinbar auch keiner helfen...
```

Ja weil man denkt, dass man die Sachen so medias in res machen kann. Aber dann kommt genau das. Und du bist nichtmal in der Lage die Fehlermeldungen zu posten, die kommen.

Klar es wird sowas wie "no suitable driver" oder "class not found". 

Beides kann man googeln. Aber ich fange hier nicht an zu raten, was bei dir schlief läuft. Das machen hier andere User sehr gerne ;D.

Ich konzentriere mich auf die Fakten aus dem Posting und wenn die eben nix hergeben, kann man nix machen.


----------



## CMTuT200 (3. Aug 2014)

Falls du bei 1) meintest, dass ich einen Error angeben soll, damit du mir helfen kannst, habe ich doch geschrieben, dass es mir nicht mal mehr die Errors ausgibt, aber du scheinst ja nichtmal in der Lage zu sein genau zu lesen. Das Programm scheint einfach garnicht außerhalb von Eclipse zu laufen, denn die erste Zeile in der Main-Methode sieht wie folgt aus: 
	
	
	
	





```
JOptionPane.showMessageDialog(null, "Test");
```
. Daraus schließe ich, dass der Class-Path irgentwie fehlerhaft zu sein scheint.
Und den gesamten Error von 2) habe ich auch gepostet. Wenn du mir sagst wie ich an genauere Errors komme, kann ich sie dir gerne geben.
Ich habe auch schon die Manifest.MF geändert aber es funktioniert immer noch nicht


----------



## JavaMeister (3. Aug 2014)

> Falls du bei 1) meintest, dass ich einen Error angeben soll, damit du mir helfen kannst, habe ich doch geschrieben, dass es mir nicht mal mehr die Errors ausgibt, aber du scheinst ja nichtmal in der Lage zu sein genau zu lesen.



Doch ich habe es genau gelesen und Dir eben mitgeteilt, dass ich nicht anfangen werde zu raten ;D - Ist ja nix gegen Dich persönlich.



> Ich habe auch schon die Manifest.MF geändert aber es funktioniert immer noch nicht



Wenn deine jar nicht im Classpath liegt, dann bringt dir das nix. 

Wie startest Du das Programm?


----------



## CMTuT200 (3. Aug 2014)

Ich führe die jar einfach per doppelklick aus, bzw lasse das Plugin vom Server laden.
Ein Error kommt noch beim Plugin vor dem anderen: "Error while loading the drivers: org.apache.derby.jdbc.EmbeddedDriver"
Ich hab schon in der Manifest den Class-Path angegeben und dabei verschiedene Möglichkeiten probiert, aber nichts hat funktioniert... (Class-Path: C:/Program Files/Java/jdk1.8.0_05/db/lib oder Class-Path: C:\Program Files\Java\jdk1.8.0_05\db\lib?


----------

