-
Type: Bug
-
Resolution: Unresolved
-
Priority: Minor
-
None
-
Affects Version/s: 1.0.48-RC1
-
Component/s: s2dao
-
None
たとえば次のようなSQLをSQLファイルに記述しておいて実行すると発生します。
SELECT * FROM emp WHERE job = '/*'
Caused by: org.seasar.dao.TokenNotClosedRuntimeException: [EDAO0002]'が*/で閉じていません at org.seasar.dao.parser.SqlTokenizerImpl.parseComment(SqlTokenizerImpl.java:168) at org.seasar.dao.parser.SqlTokenizerImpl.next(SqlTokenizerImpl.java:79) at org.seasar.dao.parser.SqlParserImpl.parse(SqlParserImpl.java:60) at org.seasar.dao.impl.AbstractDynamicCommand.setSql(AbstractDynamicCommand.java:46) at org.seasar.dao.impl.DaoMetaDataImpl.setupSelectMethodByManual(DaoMetaDataImpl.java:396) at org.seasar.dao.impl.DaoMetaDataImpl.setupMethodByManual(DaoMetaDataImpl.java:375) at org.seasar.dao.impl.DaoMetaDataImpl.setupMethodBySqlFile(DaoMetaDataImpl.java:299) at org.seasar.dao.impl.DaoMetaDataImpl.setupMethod(DaoMetaDataImpl.java:197)
修正の難易度は高そうです。'/*'など文字列リテラルとしてSQLファイルに記述する必要はほとんどないと思うので、緊急度は高くないと思います。