Answering my own posts... Switching to PostgreSQL was quite simple:
1. in perscala/pom.xml, replace this: <dependency> <groupId>hsqldb</groupId> <artifactId>hsqldb</artifactId> <version>1.8.0.7</version> </dependency> with this: <dependency> <groupId>org.postgresql.Driver</groupId> <artifactId>postgres</artifactId> <version>8.3</version> </dependency> No need to change anything in webapp/pom.xml. Change perscala/resources/META-INF/persistence.xml from this: <persistence> <persistence-unit name="jpaweb" transaction-type="RESOURCE_LOCAL"> <properties> <property name="hibernate.dialect" value="org.hibernate.dialect.HSQLDialect"/> <property name="hibernate.connection.driver_class" value="org.hsqldb.jdbcDriver"/> <property name="hibernate.connection.username" value="sa"/> <property name="hibernate.connection.password" value=""/> <property name="hibernate.connection.url" value="jdbc:hsqldb:file:jpaweb"/> <property name="hibernate.max_fetch_depth" value="3"/> <property name="hibernate.show_sql" value="true" /> <property name="hibernate.hbm2ddl.auto" value="update" /> </properties> </persistence-unit> </persistence> to this: <persistence> <persistence-unit name="jpaweb" transaction-type="RESOURCE_LOCAL"> <properties> <property name="hibernate.dialect" value="org.hibernate.dialect.PostgreSQLDialect"/> <property name="hibernate.connection.driver_class" value="org.postgresql.Driver"/> <property name="hibernate.connection.username" value="[psql user]"/> <property name="hibernate.connection.password" value="[psql password]"/> <property name="hibernate.connection.url" value="jdbc:postgresql://localhost/jpaweb"/> <property name="hibernate.max_fetch_depth" value="3"/> <property name="hibernate.show_sql" value="true" /> <property name="hibernate.hbm2ddl.auto" value="update" /> </properties> </persistence-unit> </persistence> You'll need to replace [psql user] and [psql password] in the above code with the appropriate username and password respectively for your PostgreSQL installation. Create a new database in PostgreSQL called jpaweb (UTF-8). Then cd to the perscala directory and run mvn install to add the changes. Go back to the webapp directory and run mvn jetty:run -U. Then check your PostgreSQL server and you should find that the book and author tables have appeared in your jpaweb database. Cool. This is the most progress I've made (and the fastest) since I started looking at Lift months ago. Thanks again Derek. I owe you at least a beer. Chas. Charles F. Munat wrote: > Hot damn. I installed Lift using mvn install on my local copy, and went > back to the webapp and ran mvn jetty:run -U and IT RUNS. I now have > "Welcome to the super duper catalog!" at localhost:9090. > > THANK YOU VERY MUCH, DEREK. > > Now, any ideas on how to switch it from HSQLDB to PostgreSQL? > > I presume that I should change: > > perscala/pom.xml: > > <dependency> > <groupId>hsqldb</groupId> > <artifactId>hsqldb</artifactId> > <version>1.8.0.7</version> > </dependency> > > to > > <dependency> > <groupId>org.postgresql.Driver</groupId> > <artifactId>postgres</artifactId> > <version>8.3</version> > </dependency> > > And change webapp/pom.xml: > > <dependency> > <groupId>org.apache.derby</groupId> > <artifactId>derby</artifactId> > <version>10.2.2.0</version> > </dependency> > > to > > <dependency> > <groupId> org.postgresql.Driver</groupId> > <artifactId>postgres</artifactId> > <version>8.3</version> > </dependency> > > Or do I even need this, as the Derby code is commented out and all > access to the DB will be through perscala? > > And change perscala/resources/META-INF/persistence.xml: > > <property name="hibernate.dialect" > value="org.hibernate.dialect.HSQLDialect"/> > <property name="hibernate.connection.driver_class" > value="org.hsqldb.jdbcDriver"/> > > to > > <property name="hibernate.dialect" > value="org.hibernate.dialect.PostgreSQLDialect"/> > <property name="hibernate.connection.driver_class" > value="org.postgresql.jdbcDriver"/> > > I'm not quite sure what to do about the jpaweb.properties file: > > #HSQL Database Engine 1.8.0.5 > #Fri Sep 05 15:02:33 PDT 2008 > hsqldb.script_format=0 > runtime.gc_interval=0 > sql.enforce_strict_size=false > hsqldb.cache_size_scale=8 > readonly=false > hsqldb.nio_data_file=true > hsqldb.cache_scale=14 > version=1.8.0 > hsqldb.default_table_type=memory > hsqldb.cache_file_scale=1 > hsqldb.log_size=200 > modified=yes > hsqldb.cache_version=1.7.0 > hsqldb.original_version=1.8.0 > hsqldb.compatible_version=1.8.0 > > Do I need this? > > Chas. > > Derek Chen-Becker wrote: >> >> On Fri, Sep 5, 2008 at 4:01 PM, Charles F. Munat <[EMAIL PROTECTED] >> <mailto:[EMAIL PROTECTED]>> wrote: >> >> >> OK, did that, and mvn test ran successfully. >> >> >> Phew! I was really confused as to how that could have gone wrong. >> >> >> >> >> Am I missing something? >> >> >> Yes. The first missing dependency is the perscala project. I forgot that >> step. You need to run "mvn install" from the perscala module to install >> the persistence jar. Any maven gurus out there with a suggestion on how >> to get this done automatically would be appreciated. The second >> dependency is on the SNAPSHOT version of liftweb. I don't know if it's >> published in the repos, so you might need to check out a copy of the >> SNAPSHOT version from Git and then install that into your repo by doing >> a "mvn install" there. This is part of the reason that I was holding >> back; another is that if the API changes it breaks the code, but neither >> of these is a huge deal. >> >> Derek >> > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Lift" group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~----------~----~----~----~------~----~------~--~---