HSQLDB, Seam und JBOSS

Platon

Grünschnabel
Hallo zusammen,

erst mal eine Auflistung der von mir verwendeten Tools und Frameworks:
jboss-5.0.0.GA
jboss-seam-2.1.1.GA
jboss tools 3 CR2
eclipse neuste version
System: MacOS X

So ich nutze dann die Jboss Tools um ein neues Seam Projekt zu erstellen, dafür gibts ja auch genügend Tutorials im Web.
Wenn ich mir eine MySQL Datenbank einrichte, dann funktioniert auch alles ohne Probleme, ich kann den Server starten und die Verbindung zur DB funktioniert auch.
Nun wollte ich aber eine Verbindung zu einer HSQLDB herstellen.
Ich habe zuerst die DB über die Konsole starten lassen, so wie es auch in der HSQLDB Doku steht und folgenden Ausschnitt meiner projekt-ds.xml

<connection-url>jdbc:hsqldb:hsql://localhost/projekt</connection-url>
<driver-class>org.hsqldb.jdbcDriver</driver-class>
<user-name>sa</user-name>
<password></password>

DB wird in der Konsole mit java -cp ./hsqldb.jar org.hsqldb.Server -database.0 file:./projekt/projekt -dbname.0 projekt
gestartet.
Starte ich den JBoss Server aus Eclipse heraus kommt irgendwann folgender Fehler:
Code:
11:49:00,316 INFO  [InjectedDataSourceConnectionProvider] Using provided datasource
11:50:15,344 WARN  [JBossManagedConnectionPool] Throwable while attempting to get a new connection: null
org.jboss.resource.JBossResourceException: Could not create connection; - nested throwable: (com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

Last packet sent to the server was 0 ms ago.)
at org.jboss.resource.adapter.jdbc.local.LocalManagedConnectionFactory.getLocalManagedConnection(LocalManagedConnectionFactory.java:225)
	at org.jboss.resource.adapter.jdbc.local.LocalManagedConnectionFactory.createManagedConnection(LocalManagedConnectionFactory.java:195)
	at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.createConnectionEventListener(InternalManagedConnectionPool.java:611)
	at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.getConnection(InternalManagedConnectionPool.java:257)
...

Ich kann mich allerdings per Squirrel SQL zu der DB verbinden. Also das funktioniert anscheinend nur aus JBOSS heraus nicht.

Habe dann mal ein normales Java Programm erstellt und in der Main Methode eine Verbindung aufgebaut und das funktioniert wiederum:
Code:
Class.forName("org.hsqldb.jdbcDriver");
con = DriverManager.getConnection("jdbc:hsqldb:hsql://localhost/projekt", "sa","");

Dann habe ich etwas rumprobiert und wenn ich das richtig verstanden habe, dann bedeutet dieser in-process Mode, dass die HSQLDB von Jboss/eclipse gestartet wird und ich nicht mehr über die Konsole etwas starten muss. Habe die ds.xml so angepasst:
<connection-url>jdbc:hsqldb:file:/Users/pfad zur db</connection-url>
...
Reicht das für den in-process Mode? Der Fehler tritt leider weiterhin auf.

Ich werde wohl nachher mal das Spring Framework mit der Spring IDE für Eclipse probieren und schauen ob dieses funktioniert.

Kann mir irgendeiner helfen? Muss ich noch was im JBOSS einrichten?
 
Hallo,

schau dir doch die Exception mal genau an:
throwable: (com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

Last packet sent to the server was 0 ms ago.)
Das ist eine Fehlermeldung vom MYSQL JDBC Treiber! Entweder hast du irgendwo noch einen MySQL JDBC Connection String drin und / oder verwendest noch den MySQL JDBC Treiber.


Gruß Tom
 
argh ;-)
wer lesen kann ist klar im Vorteil nicht :D
Ok lustigerweise hatte ich im JBoss Deploy Ordner noch ne alte Applikation (ear + ds.xml) welche auf die mysql db zugreifen wollte.

Oh man...
Vielen Dank für den Hinweis!
 

Neue Beiträge

Zurück