私はJDOのDatanucleusチュートリアルアプリケーションspecifically this oneを使って作業しています。Datanucleusスキーマ生成で "継承戦略="指示が無視される
どのような "継承戦略"私はテーブルのレイアウトを試しても同じです。 PRODUCTとBOOKの2つのテーブルが必要ですが、以下の設定を使用すると、ProductクラスとClass Bookクラスの両方の列を持つPRODUCTテーブルしか取得できません。
<class name="Product" identity-type="sequence">
<inheritance strategy="complete-table"/>
<field name="name">
<column name="PRODUCT_NAME" length="100" jdbc-type="VARCHAR"/>
</field>
<field name="description">
<column length="255" jdbc-type="VARCHAR"/>
</field>
</class>
<class name="Book" identity-type="sequence">
<field name="author">
<column length="40" jdbc-type="VARCHAR"/>
</field>
<field name="isbn">
<column length="20" jdbc-type="CHAR"/>
</field>
<field name="publisher">
<column length="40" jdbc-type="VARCHAR"/>
</field>
</class>
ディレクトリ構造は、build.xmlと同様にチュートリアルとまったく同じです。私は、Antタスクとコマンドラインの両方でスキーマを生成しようとしました。
私は一連のコマンドを使用します。スキーマが生成され
ant clean
ant compile
ant enhance
ant createschema
が、DataNucleusのドキュメントとして、それが継承戦略であることを示唆しているではない「競争・テーブルを。」
私のターゲットデータベースは、Ubuntu 10.04で動作するPostgreSQL 8.4です。
誰かがこの問題に遭遇し、解決策を見つけましたか?
何も変更する必要はありません。私はAntを使って現在のバージョン(2.2)を実行し、それはすべて動作します。あなたの状況は、提供されたbuild.xmlを使用しなかった人の症状です。その結果、あなたのCLASSPATHにORMファイルがありません。 – DataNucleus
いいえ、私は2.2バージョンを試します。上記の問題は2.1バージョンの試用によるものです。 – Marek