Я обнаружил, как это сделать, хотя я думаю, что это должно быть проще, хе-хе.
Вот оно:
1) Сначала мы должны настроить сервер PostgreSQL;
2) Создайте наше веб-приложение с помощью webAppCreator (из GWT SDK);
3) Поскольку мы должны улучшить наши доменные классы, чтобы они могли использоваться datanucleus и JDO, у нас есть несколько вариантов сделать это. Я использовал задачу Apache Ant (из Google App Engine SDK). Если мы сделаем это, мы сможем использовать хорошие части из движка приложения (простое улучшение класса), но наше приложение не будет привязано к ограничениям App Engine.
Дополнения к build.xml, созданные с помощью webAppCreator:
<!-- this refers to the location of my Google AppEngine SDK -->
<property name="sdk.dir" location="C:/Projects/appengine-java-sdk" />
<import file="${sdk.dir}/config/user/ant-macros.xml" />
<target name="copyjars"
description="Copies the App Engine JARs to the WAR.">
<copy
todir="war/WEB-INF/lib"
flatten="true">
<fileset dir="${sdk.dir}/lib/user">
<include name="**/*.jar" />
</fileset>
</copy>
</target>
<target name="compile" depends="copyjars"
description="Compiles Java source and copies other source files to the WAR.">
<mkdir dir="war/WEB-INF/classes" />
<copy todir="war/WEB-INF/classes">
<fileset dir="src">
<exclude name="**/*.java" />
</fileset>
</copy>
<javac
srcdir="src"
destdir="war/WEB-INF/classes"
classpathref="project.class.path"
debug="on" />
</target>
<target name="datanucleusenhance" depends="compile"
description="Performs JDO enhancement on compiled data classes.">
<enhance_war war="war" />
</target>
4) Загрузите драйвер PostgreSQL JDBC с официального сайта;
5) Загрузите файл datanucleus-rdbms.jar со официальной страницы sourceforge;
6) Добавьте эти банки в Project Classpath;
7) Создайте файл со следующим содержимым:
javax.jdo.PersistenceManagerFactoryClass=org.datanucleus.jdo.JDOPersistenceManagerFactory
javax.jdo.option.ConnectionDriverName=org.postgres.jdbc.Driver
javax.jdo.option.ConnectionURL=jdbc:postgres://localhost:5432/myschool
javax.jdo.option.ConnectionUserName=root
javax.jdo.option.ConnectionPassword=rootroot
datanucleus.autoCreateTables=true
8) Создайте PersistenceManagerFactory так:
File propsFile = new File("Insert the location of the properties file here");
PersistenceManagerFactory pmf = JDOHelper.getPersistenceManagerFactory(propsFile);
9) Создайте классы домена и запустите новую цель Ant datanucleusenhance ;
10) Это создаст расширенные классы и соединение с реляционной базой данных, а также сохранит информацию в таблицах PostgreSQL.
11) Если я не ошибаюсь и если я ничего не забыл, вот и все:)
Спасибо, что прочитали вопрос.
Пожалуйста, если вы заметили что-то не так, вы можете сказать мне? Это мой первый раз здесь: P
==== Некоторые ссылки ====
http://code.google.com/intl/en/appengine/docs/java/tools/ant.html#Enhancing_JDO_Classes