2016-09-16 1 views
1

Ich bin mit der nächsten Ausgabe konfrontiert. In meiner Firma bewegen wir Hypersonic db von Jboss zum TomEE Server (apache-tomee-plus-7.0.1). Alle erforderlichen Bibliotheken sind laut Hypersonic-Dokumentation im lib-Verzeichnis des Servers (standardmäßig).Run Hypersonic db auf Tomee im Servermodus

Ich möchte, wenn der Server beginnt zu starten Hypersonic-Datenbank im Server-Modus (auf bestimmten Port) von der Konfiguration, damit eine Webapp, die auf dem gleichen Server bereitgestellt wird, eine Verbindung zu ihm herstellen kann.

Hier ist unsere Ressource config in tomee.xml:

<Resource id="HSQLDB Database" type="DataSource"> 
    jdbcDriver = org.hsqldb.jdbcDriver 
    jdbcUrl = jdbc:hsqldb:hsql://127.0.0.1:9001 
    userName = sa 
    password = 
</Resource> 

Aber als Server gestartet wird, wir nächste Fehler:

org.apache.openejb.assembler.classic.Assembler.createRecipe Creating Resource(id=HSQLDB Database) 
16-Sep-2016 13:14:05.145 SEVERE [main] org.apache.tomcat.jdbc.pool.ConnectionPool.init Unable to create initial connections of pool. 
java.sql.SQLTransientConnectionException: java.net.ConnectException: Connection refused: connect 

Kann mir jemand sagen, was wir falsch machen und wie stellen wir Hypersonic db auf Tomee erfolgreich im Servermodus bereit?

Antwort

2

Ich sehe, dass Sie nicht den Namen der Datenbank und des Alias ​​angegeben haben, mit dem verbunden werden soll. Beide der folgenden URLs sollten gut funktionieren. Die HSQL-Datenbank verwendet standardmäßig den Port 9001. Wenn es auch anders nicht gesetzt worden ist, werden alle folgenden URLs sollten gut funktionieren:

jdbc:hsqldb:hsql://localhost:9001/myDatabase 
jdbc:hsqldb:hsql://127.0.0.1:9001/myDatabase 
jdbc:hsqldb:hsql://localhost/myDatabase 
jdbc:hsqldb:hsql://127.0.0.1/myDatabase 

Bevor Sie zur Datenbank mit Java verbinden, haben Sie Ihren Server nach oben in einem Terminal zu starten:

java -cp C:/----/hsqldb-2.3.4/lib/hsqldb.jar org.hsqldb.server.Server --database.0 file:myDatabase --dbname.0 myDatabase 

Vergessen Sie nicht, den vollständigen Pfad zu hsqldb.jar anzugeben.

+0

Hallo Danke für die Antwort. Wir haben es geschafft. Ich würde auch gerne wissen, ob es einen Weg gibt, zu vermeiden, einen separaten hsql-Server in einem Terminal zu starten und hsql auf dem gleichen TomEE-Server zu deployen, auf dem unsere WebApp läuft? – Stevan

+0

Hmm, meine einzige Idee ist, es als Befehl mit Java direkt auszuführen. –

Verwandte Themen