Friday, May 30, 2008

hibernate3-maven-plugin and hbm2ddl

I've wrestled with this quite a bit in the past few days. I had a difficult time figuring out some of the settings from the plugin site. Here's what I finally ended up with that works properly.


<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>hibernate3-maven-plugin</artifactId>
<version>2.1</version>
<configuration>
<components>
<component>
<name>hbm2ddl</name>
<implementation>
jpaconfiguration
</implementation>
</component>
</components>
<componentProperties>
<drop>true</drop>
<jdk5>true</jdk5>
<outputfilename>schema.ddl</outputfilename>
<persistenceunit>Developer</persistenceunit>
<propertyfile>target/classes/jdbc.properties</propertyfile>
<skip>${maven.test.skip}</skip>
</componentProperties>
</configuration>
<dependencies>
<dependency>
<groupId>hsqldb</groupId>
<artifactId>hsqldb</artifactId>
<version>1.8.0.7</version>
</dependency>
</dependencies>
</plugin>

Thursday, May 29, 2008

Google App Engine

Now that Google has opened up Google App Engine, I finally have an account. I never received one during the initial releases. I've been working on a simple Python application intended to manage teams. Essentially the type of team I'm intending the site to manage are youth sports teams.


iTeam


For now though I basically have the classic file maintenance pattern as I like to think of it. Essentially it is a form with a list of inserted records below the form on the same page. Very simple. However, I've been coding this same pattern in various formats for my entire career it seems. This go-around though it is in Python using Google's version of Django which I have been learning. The real power though is the ability to define a data model within Python code and then let the app engine manage the physical representation and deployment of the data. That's a lot of work off-loaded.

My goal is to integrate the site with other Google services so that a coach could create a team and then allow families to join the team in order to view the team schedule, contact list, share photos, etc. There's lots more to do.