Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Achso, naja, hmm...
Der Grund ist, dass ich es "leid" bin, mich mit diesem Derby-Gedöns herumzuschlagen. Ich möchte, dass der Derby-Network-Server beim Start meiner WebApplikation per Java-Code gestartet wird, aber das will einfach nicht funktionieren...
Deshalb kam mir der Gedanke, die DB einfach rauszuschmeißen und ne andere (z.B. Access) zu verwenden...
Also wenn ich hier ein WAS testweise lokal auf meinem PC starte, muss ich immer manuell nochmal den Derby Network Server starten. Wie das später auf dem eigentlichen Produktionsserver aussieht weiß ich nicht, ich würde aber mal vermuten gleich, oder?
[06.04.09 13:55:49:211 CEST] 0000002d LocalTranCoor E WLTC0017E: Es wurde eine ROLLBACK-Operation für die Ressourcen ausgeführt, weil setRollbackOnly() aufgerufen wurde.
[06.04.09 13:55:49:221 CEST] 0000002d WebApp E [Servlet Error]-[/_sw/Jahresueberblick.jsp]: java.lang.NullPointerException
meinst du also, wenn ich das im EmbeddedModus testen will, muss das so da stehen (also ohne das localhost) ?
(die KalenderDB liegt in meinem Projektordner)
[HIGHLIGHT="Java"]Class.forName("org.apache.derby.jdbc.EmbeddedDriver").newInstance();
con = java.sql.DriverManager.getConnection("jdbc:derby:kalenderDB", properties.getProperty("dbuser"), properties.getProperty("dbpass"));[/HIGHLIGHT]
Ich lese auch ständig etwas vom "CLASSPATH". Wie genau kann man da denn etwas hinzufügen? Da habe ich mal absoulut keinen Plan von :bahnhof:
Bedeutet das nicht, dass die DB damit neu angelegt wird? Die DB existiert ja schon, und da sind wichtige Daten drin. Ich war bisher der Meinung, das create=true würde bedeuten, dass er die DB neu anlegt!?! :bahnhof:
Hmm, wenn ich das so sehe, werde ich wohl mal meinen ganzen ausgedruckten "Schrott" hier wegwerfen, von (fast) alledem, was ich hier erfahre steht da nichts drin.
Danke schonmal, dann werde ich mal das create=true versuchen.
So, also mit der Verbindung scheint das nun zu klappen (mehr oder weniger...)
Ich bin jetzt mal ab dem Step mit der Verbindungserstellung mit dem Debugger durch das Programm gegangen. Dabei komme ich in folgendes Problem/folgenden Fehler (ich hoffe, der ist irgendwie nachvollziehbar für euch). Habe mal einen Screenshot angehängt, auf dem man etwas sehen kann:
Dieser Fehler kommt halt "nur", wenn ich mit dem EmbeddedDriver arbeite. Beim ClientDriver funzt es...
Wenn ich mit dem Debugger über diesen Schritt gehe, kommt jedenfalls diese Meldung:
[07.04.09 08:59:56:204 CEST] 00000024 ServletWrappe E SRVE0068E: Es wurde eine Ausnahme angefangen, die in einer der Servicemethoden des Servlet /_sw/Jahresueberblick.jsp ausgelöst wurde. Ausgelöste Ausnahme: java.lang.NullPointerException
So,
so langsam schaffe ich es das Problem einzugrenzen. Die von mir oben gezeigte Fehlermeldung kommt, weil er vorher im SQL-Stmt. einen Fehler erhält. Er behauptet, dass eine Tabelle nicht existieren würde, auf die er zugreift!?! :-(
Hmm, was ich dann aber wiederum nicht verstehe, ist, dass es klappt, wenn ich nicht den EmbeddedDriver sondern den ClientDriver verwende!?!?! Kurios, kurios...
Aber ich werde mal den DBVisualizer probieren...
Genau das ist auch meine Vermutung, aber hier im Bild sieht man theoretisch, dass ich zur DB connected bin, und dass die Table existiert...
So langsam verzeifle ich
Doch, müsste eigentlich. Der User ist mit allen Rechten ausgestattet.
Aber ich glaube, ich gebe es auf: Das hier ist ein Ding, dass ich nicht selber programmiert habe, dementsprechend fehlt mir der Background. Ich sollte "nur" dafür sorgen, dass es später auf einem Server läuft, aber mit dem "Theater" habe ich da vorher nicht gerechnet... Hölle!!!!!!! ;(
Fang nochmal frisch an.
Zum testen nur das Minimum.
Hilft oft und schärft den Blick auf das wesentliche.
Wenn du das mit der DB dann hinbekommen hast, kannst du dich ja wieder um dein eigentliches Problem kümmern.