HSQLDB under Tomcat
HejHvordan får jeg Tomcat til at styre min connectionpool mod HSQLDB?
Hvordan får jeg Tomcat til at logge at HSQLDB er startet op, så jeg kan se det på consolen og i log-filen?
HSQLDB bør samtidig være tilgængelig via DatabaseManager(Swing), - i første omgang via Tomcat/localhost - men senere via nettet på den maskine der skal "hoste" min applikation.
Jeg kan ikke se at porten er optaget (netstat -a), og jeg kan ikke få adgang til databasen direkte!
Jeg har Tomcat og HSQLDB til at køre, og jeg kan fint tilgå data i databasen som beskrevet i "The Tomcat 4 Servlet/JSP Container - JNDI Datasource HOW-TO": http://localhost:8080/DBTest/test.jsp
=> Korrekt svar på min webside
- MEN hvis jeg opdaterer siden (eller starter flere browsere op) tages der en ny connection hver gang, og efter 3. forsøg (maxActive=2) får jeg "No DB connection". Det hjælper ikke at vente længe!
Jeg får en Exception på min Tomcat consol når der ikke er flere connections ledige!
I DatabaseManagerSwing forsøger jeg med:
Type=Server
URL=jdbc:hsqldb:hsql://localhost:8080
=> Connect
=> Error getting metadata
=> Connection is broken
Type=WebServer
URL=jdbc:hsqldb:http://localhost:8080
=> java.sql.SQLException: Connection is broken
Jeg bruger nedenstående server.xml:
<Context path="/DBTest" docBase="/DBTest" debug="5" crossContext="true">
<Logger className="org.apache.catalina.logger.FileLogger" prefix="localhost_DBTest_log." suffix=".txt" timestamp="true"/>
<Resource name="jdbc/TestDB" auth="Container" type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/TestDB">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
<parameter>
<name>username</name>
<value>sa</value>
</parameter>
<parameter>
<name>password</name>
<value/>
</parameter>
<parameter>
<name>driverClassName</name>
<value>org.hsqldb.jdbcDriver</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:hsqldb:TestDB</value>
</parameter>
<parameter>
<name>maxActive</name>
<value>2</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>1</value>
</parameter>
<parameter>
<name>port</name>
<value>9001</value>
</parameter>
<parameter>
<name>maxWait</name>
<value>1000</value>
</parameter>
</ResourceParams>
</Context>
</Host>