[#m07b22ad][Seasar-user:5458]のスレッドを参照。[#ce7c8396]SQLファイルないしSQLアノテーションでSQLを記述してください。http://d.hatena.ne.jp/duran/20070119#p1**PosgreSQLとS2Pagerの組み合わせで、limitとoffsetを使用した高速取得使用時にSQLExceptionが発生する。[#d718f3a3]j2ee.dicon又はjdbc.diconの接続文字列にオプション「protocolVersion=2」を付いているか確認してください。[#t2696db0]戻り値を配列かListで宣言しているSelect系メソッドの場合は、要素数0の配列かListがreturnされます。nullではありません。[#r16e487f]現行のS2Daoの仕様です。これはバッチ更新の場合、複数レコードの更新・削除をまとめて行うためID値の取得を行うタイミングがないためです。(1件ずつINSERTする場合はINSERT文を発行する直前にSEQUENCEからnextvalを取得していますが、バッチ更新の場合はnextvalを取得するタイミングが無いため。)**OracleのNUBER型のカラムにBEAN側のInteger型プロパティを組み合わせると、Insert/Update時に値がとんでもなくなる(例8.3000000000000000000000000000000000E+83)場合がある。[#bcef7a42]OracleとJDBCドライバの組み合わせによって、この現象が起きることが報告されています。updateメソッドの初期化時に例外が発生しました。>[EDAO0009]test.dto.TestDto$$EnhancedByS2AOP$$423a423aにプライマリーキーが見つかりません原因は三つ考えられます。-TestDtoのTABLEアノテーションで指定したテーブルに、プライマリーキーがないか、ユニークキーのみ設定されている。-TABLEアノテーションで指定した''テーブル名が間違っている''。[#n8024f9b]リンク先の表をごらんください。[#ocd1ed37]IDアノテーションを使用してIDの自動設定を行う場合、Daoが使うDataSourceにトランザクションがかかっている必要があります。[#t3335ca5]データソース毎にisolationレベルを変更可能です。diconファイルにて、ConnectionPoolImplのtransactionIsolationLevelプロパティにConnection.TRANSACTION_SERIALIZABLEなどを指定してください。アプリケーション内で複数のtransactionIsolationLevelを使い分けたい場合は、複数のConnectionPoolImplをdiconで設定してください。[#kf22bc03]プライマリーキーのみのテーブルに対するDaoを作成したところ、以下のような例外が出ました。[EDAO0019]jp.roaso.dao.UsrgrpassignedDaoのupdateメソッドの初期化時に例外が発生しました。KeyのみのテーブルをSQL文の自動生成で更新することはできません更新SQLを自動生成しているメソッドを削除してください。?となり、SQL文として意味を成しません。このため、Daoの初期化時(Dao中のいずれかのメソッドが最初に呼ばれたとき)に、PKだけのテーブルに対してSQL文の自動生成を行うメソッドがあった場合には例外にするようになっています。