[Seasar-user:15996] Re: [S2JDBC-Gen] gen-entityの警告とエラーに関して

Toshihiro Nakamura [E-MAIL ADDRESS DELETED]
2008年 10月 15日 (水) 22:50:28 JST


中村(taedium)です。

> ===========================================
> [警告] GeneratedValueを利用していない場合にもつく
> ===========================================
>     /** formDataIdプロパティ */
>     @Id
>     @Column(precision = 22, nullable = false, unique = true)
>     public BigInteger formDataId;
> 
> @idがついていて、@uniqueがtrueの場合
> 
> import javax.persistence.GeneratedValue;
> 
> が自動的に付与されますが、@GeneratedValueを利用して
> いないため警告になります。

私の環境では再現しませんでした。

@GeneratedValueのstrategy属性には何が指定されて
いますか?

また、確認ですが、Gen-EntiyタスクのidGeneration属性
の指定はどうなっているでしょう?
ここに指定した値によっては@GeneratedValueが
付与される仕様になっています。

formDataIdに対応するカラム定義も気になります。
メタデータでAutoIncrementされるかどうかみているのですが、
カラムの定義によっては、OracleでもAutoIncrementと
判断される?

> ===========================================
> [エラー] BigIntegerのテストでエラー
> ===========================================
>     public void testFindById() throws Exception {
>         jdbcManager.from(EmployeeMessage.class).id(new
> BigInteger(1)).getSingleResult();
>     }
> 
> new BigInteger(1) の部分がエラーとなります。long型などの数値を引数にして
> 作成することができないみたいです。
> 
> new BigInteger("1")

そのとおりですね。。。
ご指摘ありがとうございます。
直します。

-- 
Toshihiro Nakamura



Seasar-user メーリングリストの案内