[Seasar-user:19971] Re: [DBFlute]JDK1.6+DBFlute 0.5.2でビルドエラー

Yu Tagaya [E-MAIL ADDRESS DELETED]
2010年 7月 13日 (火) 13:08:45 JST


久保さん
アークシステムの多加谷です。

DfSql2EntityTask.doExecuteでDfRunnerInformationに
UTF-8をsetEncodingしてうまくいきました。

情報をありがとうございました。

> 久保(jflute)です。
>
> 取り急ぎの回答ですが、
> DfSql2EntityTask、DfRunnerInformation、
> DfSqlFileRunnerBaseクラス周辺で、SQLファイルを
> 読み込んでいる箇所があるはずなので、そこで
> エンコーディングを明示的にUTF-8に修正できると
> 思われますのでお試し下さい。
> (DfSqlFileRunnerBaseのReaderを利用している
> 箇所あたりかなと)
>
> 2010/7/9 Yu Tagaya <[E-MAIL ADDRESS DELETED]>:
>> 久保さん
>> アークシステムの多加谷です。
>>
>> JDK1.5+DBFlute 0.5.2でビルドしたところjdbc,generate,sql2entityを
>> JDK1.6でできるようになりましたが、今度はJDK1.6+JDBC driver 1.6用
>> で外だしSQLがUTF-8で日本語を含むときにsql2entityでパースエラーが
>> 発生するようになりました。(なぜかJDK1.5+JDBC driver 1.5用ではOK)
>>
>> DBFlute 0.5.5の以下の修正を0.5.2に適用すればよいと思うのですが
>> 0.5.2のソースでどこを直せばよいかわかりますか?
>> ソースにUTF-8とベタ書きでOKです。
>>
>> [DBFLUTE-136] {Java}: S2DaoのSqlFileEncoding(外だしSQLのEncoding指定)を指定可能にする
>>
>>
>>
>>> 金子と申します。
>>>
>>> 私の記憶が正しければ、
>>> JDK 6.0からは、JDBCのバージョンが上がり、ResultSet周りで、
>>> メソッドが大量に追加されています。
>>>
>>> そのため、DBFlute内部でも、JDK5.0での生成か、JDK6.0 での生成かで、
>>> 分岐があったと記憶しています。
>>>
>>> ですので、まずは、JDK6.0 の環境下での、
>>> コード生成(jdbc,generate,sql2entity)をやってから、
>>> 改めて、ビルドをしてみたほうがよいかと思います。
>>>
>>> 以上、よろしくお願いします。
>>>
>>>
>>> (2010/07/08 17:50), Yu Tagaya wrote:
>>>>
>>>> 久保さん
>>>> アークシステムの多加谷です。
>>>>
>>>> 2007年8月頃に[Seasar-user:9981]などで質問させていただいた案件に
>>>> 関連して、JDK1.5_12 -> 1.6_20、SQL Server 2005 -> 2008への
>>>> バージョンアップを検討しています。
>>>>
>>>> DBFluteのバージョンは 0.5.2でカスタマイズされています。
>>>> 0.5.2で生成した既存コードをJDK1.6でビルドすると以下のエラーが出るのですが、 
>>>> 
>>>> テンプレートを修正するなどしてエラーを抑止すれば動作するでしょうか?
>>>>
>>>> それとも、DBFluteを最新版にする必要があるでしょうか?
>>>>
>>>> なお、JDK1.6+DBFlute 0.5.2でのコード生成は試していません。
>>>>
>>>> Multiple markers at this line
>>>> - The type RkTraceablePreparedStatement must implement the
>>>> inherited abstract method Statement.isPoolable()
>>>> - The type RkTraceablePreparedStatement must implement the
>>>> inherited abstract method PreparedStatement.setNCharacterStream(int,
>>>> Reader, long)
>>>> - The type RkTraceablePreparedStatement must implement the
>>>> inherited abstract method Wrapper.isWrapperFor(Class<?>)
>>>> - The type RkTraceablePreparedStatement must implement the
>>>> inherited abstract method PreparedStatement.setNClob(int, Reader)
>>>> - The type RkTraceablePreparedStatement must implement the
>>>> inherited abstract method PreparedStatement.setBlob(int, InputStream)
>>>> - The type RkTraceablePreparedStatement must implement the
>>>> inherited abstract method PreparedStatement.setCharacterStream(int,
>>>> Reader,
>>>> long)
>>>> - The type RkTraceablePreparedStatement must implement the
>>>> inherited abstract method PreparedStatement.setRowId(int, RowId)
>>>> - The type RkTraceablePreparedStatement must implement the
>>>> inherited abstract method PreparedStatement.setCharacterStream(int,
>>>> Reader)
>>>> - The type RkTraceablePreparedStatement must implement the
>>>> inherited abstract method PreparedStatement.setBlob(int, InputStream,
>>>> long)
>>>> - The type RkTraceablePreparedStatement must implement the
>>>> inherited abstract method PreparedStatement.setBinaryStream(int,
>>>> InputStream, long)
>>>> - The type RkTraceablePreparedStatement must implement the
>>>> inherited abstract method PreparedStatement.setBinaryStream(int,
>>>> InputStream)
>>>> - The type RkTraceablePreparedStatement must implement the
>>>> inherited abstract method Wrapper.unwrap(Class<T>)
>>>> - The type RkTraceablePreparedStatement must implement the
>>>> inherited abstract method PreparedStatement.setAsciiStream(int,
>>>> InputStream,
>>>> long)
>>>> - The type RkTraceablePreparedStatement must implement the
>>>> inherited abstract method PreparedStatement.setClob(int, Reader)
>>>> - The type RkTraceablePreparedStatement must implement the
>>>> inherited abstract method PreparedStatement.setAsciiStream(int,
>>>> InputStream)
>>>> - The type RkTraceablePreparedStatement must implement the
>>>> inherited abstract method Statement.isClosed()
>>>> - The type RkTraceablePreparedStatement must implement the
>>>> inherited abstract method PreparedStatement.setNCharacterStream(int,
>>>> Reader)
>>>> - The type RkTraceablePreparedStatement must implement the
>>>> inherited abstract method PreparedStatement.setClob(int, Reader, long)
>>>> - The type RkTraceablePreparedStatement must implement the
>>>> inherited abstract method PreparedStatement.setSQLXML(int, SQLXML)
>>>> - The type RkTraceablePreparedStatement must implement the
>>>> inherited abstract method PreparedStatement.setNClob(int, Reader, long)
>>>> - The type RkTraceablePreparedStatement must implement the
>>>> inherited abstract method PreparedStatement.setNClob(int, NClob)
>>>> - The type RkTraceablePreparedStatement must implement the
>>>> inherited abstract method PreparedStatement.setNString(int, String)
>>>> - The type RkTraceablePreparedStatement must implement the
>>>> inherited abstract method Statement.setPoolable(boolean)
>>>> _______________________________________________
>>>> Seasar-user mailing list
>>>> [E-MAIL ADDRESS DELETED]
>>>> https://ml.seasar.org/mailman/listinfo/seasar-user
>>>>
>>>
>>>
>>> --
>>> ◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
>>> 株式会社プラスサム
>>> 金子 雄一 Yuichi Kaneko
>>> 〒330-0854
>>> 埼玉県さいたま市大宮区桜木町2-7-4
>>> プラスサムビル
>>> Tel: 048-650-9777 Fax: 048-650-9778
>>> E-mail : [E-MAIL ADDRESS DELETED]
>>> http://www.plus-sum.co.jp/
>>> ◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
>>> _______________________________________________
>>> Seasar-user mailing list
>>> [E-MAIL ADDRESS DELETED]
>>> https://ml.seasar.org/mailman/listinfo/seasar-user
>>
>> _______________________________________________
>> Seasar-user mailing list
>> [E-MAIL ADDRESS DELETED]
>> https://ml.seasar.org/mailman/listinfo/seasar-user
>>
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user
> 



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