| At line 13 changed 1 line. |
| * [4] Start HSQL and run tests |
| * [4] Modify applicationContext-hibernate.xml |
| * [5] Start HSQL and run tests |
| At line 49 changed 1 line. |
| !!Start HSQL and run tests [#4] |
| !!Modify applicationContext-hibernate.xml [#4] |
| You need to turn off batch processing for Hibernate for things to work with HSQL. In ''src/dao/**/applicationContext-hibernate.xml'', uncomment the following line: |
| At line 51 changed 1 line. |
| HSQLDB doesn't ship with a way to start and run it as a service. However, there is a way to configure HSQLDB to [run as a service|http://www.waldhor.com/hsql.htm]. Following these instructions, you can install an HSQL service running the "appfuse" database. Just [download the hsql.exe and hsql_service_install.bat|http://www.waldhor.com/hsql.zip] and change the hsql_service_install.bat to contain the following. The setttings below assume you've extracted the hsqldb download to c:\Tools\hsqldb and that you've install the downloaded files into the same directory. |
| {{{ |
| <prop key="hibernate.jdbc.batch_size">0</prop> |
| }}} |
| At line 57 added 4 lines. |
| !!Start HSQL and run tests [#5] |
|
| HSQLDB doesn't ship with a way to start and run it as a service. However, there is a way to configure HSQLDB to [run as a service|http://www.waldhor.com/hsql.htm]. Following these instructions, you can install an HSQL service running the "appfuse" database. Just [download the hsql.exe and hsql_service_install.bat|http://www.waldhor.com/hsql.zip] and change the hsql_service_install.bat to contain the following. The settings below assume you've extracted the hsqldb download to c:\Tools\hsqldb and that you've install the downloaded files into the same directory. |
|
| At line 74 added 1 line. |
| If you write model objects with Boolean values, you may find that DBUnit fails. A quick fix for this is to add a reference to DBUnits custom data types. |
| At line 76 added 32 lines. |
| Unfortunately, the generally accepted remedy does not seemd to work, namely: |
|
| {{{ |
| <taskdef name="dbunit" classname="org.dbunit.ant.DbUnitTask" classpathref="dao.test.classpath" |
| datatypeFactory="ca.ottawa.eiad.eventscal.util.HsqlDataTypeFactory" |
| /> |
|
| }}} |
| The quick and dirty fix for this seems to be to add the factory whereever it's needed, e.g. |
| {{{ |
| <target name="db-export" depends="prepare" |
| description="Exports the current data in the database"> |
| <dbunit driver="${database.driver_class}" url="${database.url}" |
| datatypeFactory="org.dbunit.ext.hsqldb.HsqldbDataTypeFactory" |
| userid="${database.username}" password="${database.password}"> |
| <export dest="db-export.xml" format="xml"/> |
| </dbunit> |
| </target> |
| }}} |
|
| The db-load target or anything else that uses DBUnit will need a similar quickfix, so a request has been made to the JIRA issue tracker to have this fixed with a global variable for a future release. |
|
| You may need to upgrade to DBUnit2.2 for this to work. Don't forget to update your lib.properties : |
|
| {{{ |
| # |
| # DBUnit - http://www.dbunit.org/ |
| # |
| dbunit.version=2.2 |
| dbunit.dir=${lib.dir}/dbunit-${dbunit.version} |
| dbunit.jar=${dbunit.dir}/dbunit-${dbunit.version}.jar |
| }}} |