[seasar-s2dao-dev:180] [DAO-72]SQLコメント中の?があるとjava.lang.ArrayIndexOutOfBoundsExceptionが起こることがある について

SETO Azusa [E-MAIL ADDRESS DELETED]
2007年 3月 22日 (木) 22:28:38 JST


せとあずさです。

...というわけで冷静に考えなおしたのですが、以下のような方向性で考えています。

(1) SQLのコメント内から、「?」を削除してS2JDBCに渡す。(添付ファイルのような感じ)
       →ヒント等で、削除できない「?」があった場合どうする?そのような場合が存在
         するのか?→よくわからない。
(2) 久保さんから報告いただいている「埋め込み変数コメントの文字列の中に「?」が
存在すると例外になる」件は、専用の例外にする。
      →埋め込み変数コメントの文字列に「?」を使われるとPreparedStatementのプレース
        ホルダと区別がつかないので、その時点で例外でいいと思います。
(3) (1)が不可な場合、ログ出力前にコメント中から「?」を削る。(Seasar2側で対応)
      →もう1回SqlParserにかけるわけです。
      →SqlParser関連が移植されていないSeasar2.3系はどうする?
      →ログ出力のためだけにSqlParserを使うのはどうだろう。

できれば(1)(2)で対応したいと考えています。(3)はなるべく避けたいです。
みなさまどう思われますか?

-- 
せとあずさ
[E-MAIL ADDRESS DELETED]
http://www.fieldnotes.jp/d/
-------------- next part --------------
テキスト形式以外の添付ファイルを保管しました...
ファイル名: s2dao.patch
型:         application/octet-stream
サイズ:     708 バイト
説明:       無し
URL:        http://ml.seasar.org/archives/seasar-s2dao-dev/attachments/20070322/78757a95/attachment.obj 


seasar-s2dao-dev メーリングリストの案内