我想使用 dbunit 将我的测试数据库转储到原始 xml 文件中,我得到了 ClassCastException。代码下方:
new FlatXmlWriter(new FileOutputStream("expected_ds.xml")).
write(getDbunitConnection().createDataSet(new String[]{"TAB1","TAB2"}));
结果:
java.lang.ClassCastException: org.apache.commons.dbcp.DelegatingResultSet 不能转换为 oracle.jdbc.OracleResultSet
我正在使用 ojdbc14-10.2.0.3.0.jar、commons-dbcp-1.2.2.jar 和 dbunit-2.4.7.jar。
这是 oracle jdbc 中的错误吗?在 ojdbc 驱动程序中,我发现了这样的东西:
/**
*
* TODO UnitTests are completely missing
* @author Phil Barr
* @author Last changed by: $Author: jbhurst $
* @version $Revision: 1072 $ $Date: 2009-10-12 19:46:45 +0200 (lun, 12 ott 2009) $
* @since 2.4.0
*/
public class OracleXMLTypeDataType extends BlobDataType
{
public Object getSqlValue(int column, ResultSet resultSet) throws SQLException, TypeCastException
{
byte[] data = new byte[0];
OracleResultSet oracleResultSet = (OracleResultSet) resultSet;
... some other stuf ...
}
...
}
它看起来像 oracle 问题,从 javadoc 看来,它似乎根本没有经过测试。有没有人有类似的问题?