[seasar-dotnet:790] BooleanToIntCommandFactoryの利用について
Takafumi Yoshida
[E-MAIL ADDRESS DELETED]
2008年 3月 11日 (火) 13:13:31 JST
いつもお世話になります。吉田@オプティクスです。
以下の環境で、BooleanToIntCommandFactoryを使用しようとしています。
S2Container.NET 1.3.6
ODP.NET 10.2.0.100
Oracle 10.1.0
Entityのフィールドをbool型で定義、対応するテーブルのフィールドはNUMBER(1,0)で
作成し、diconファイルのBasicCommandFactoryをBooleanToIntCommandFactoryに
置き換えました。
<!--
<component class="Seasar.Extension.ADO.Impl.BasicCommandFactory" />
-->
<component class="Seasar.Extension.ADO.Impl.BooleanToIntCommandFactory" />
その後Daoのメソッドを実行すると、以下のエラーが発生します。
ERROR 2008-03-11 13:11:27,405 [10]
Seasar.Framework.Exceptions.SQLRuntimeException:
[ESSR0071]SQLで例外が発生しました。理由はSystem.InvalidCastException: 型
'Seasar.Extension.ADO.Impl.BooleanToIntParameter' のオブジェクトを型
'Oracle.DataAccess.Client.OracleParameter' にキャストできません。
場所 Oracle.DataAccess.Client.OracleParameterCollection.Add(Object obj)
場所 Seasar.Extension.ADO.Types.BaseValueType.BindValue(IDbCommand
cmd, String columnName, Object value, DbType dbType,
ParameterDirection direction)
場所 Seasar.Extension.ADO.Types.BaseValueType.BindValue(IDbCommand
cmd, String columnName, Object value, DbType dbType)
場所 Seasar.Extension.ADO.Types.BooleanType.BindValue(IDbCommand cmd,
String columnName, Object value)
場所 Seasar.Extension.ADO.Impl.BasicHandler.BindArgs(IDbCommand
command, Object[] args, Type[] argTypes) --->
System.InvalidCastException: 型
'Seasar.Extension.ADO.Impl.BooleanToIntParameter' のオブジェクトを型
'Oracle.DataAccess.Client.OracleParameter' にキャストできません。
場所 Oracle.DataAccess.Client.OracleParameterCollection.Add(Object obj)
場所 Seasar.Extension.ADO.Types.BaseValueType.BindValue(IDbCommand
cmd, String columnName, Object value, DbType dbType,
ParameterDirection direction)
場所 Seasar.Extension.ADO.Types.BaseValueType.BindValue(IDbCommand
cmd, String columnName, Object value, DbType dbType)
場所 Seasar.Extension.ADO.Types.BooleanType.BindValue(IDbCommand cmd,
String columnName, Object value)
場所 Seasar.Extension.ADO.Impl.BasicHandler.BindArgs(IDbCommand
command, Object[] args, Type[] argTypes)
どのようにすれば、、BooleanToIntCommandFactoryを利用できますでしょうか?
以上、宜しくお願いいたします。
seasar-dotnet メーリングリストの案内