ibatis-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Yuan Tao (JIRA)" <ibatis-...@incubator.apache.org>
Subject [jira] Created: (IBATIS-620) "select count(*) from table" return BigDecimal value in Oracle
Date Wed, 05 Aug 2009 08:08:14 GMT
"select count(*) from table" return BigDecimal value in Oracle

                 Key: IBATIS-620
                 URL: https://issues.apache.org/jira/browse/IBATIS-620
             Project: iBatis for Java
          Issue Type: Bug
    Affects Versions: 3.0.0
            Reporter: Yuan Tao

User SqlSession.selectOne for the sql "select count(*) from table" defined in mapping file
should return Integer, but return BigDecimal in Oracle.

The bug seems happen int DefaultResultSetHandler.mapResults method. There are codes below:

    for (int i = 1, n = rsmd.getColumnCount(); i <= n; i++) {
      boolean useLabel = mappedStatement.getConfiguration().isUseColumnLabel();
      String columnLabel = (useLabel ? rsmd.getColumnLabel(i) : rsmd.getColumnName(i));
      columnLabel = columnLabel.toUpperCase();
      String propName = metaResultObject.findProperty(columnLabel);
      if (propName != null) {

        Class javaType = metaResultObject.getSetterType(propName);                      //
This line will return Object if the resultObject is PlatformTypeHolder
        TypeHandler typeHandler = typeHandlerRegistry.getTypeHandler(javaType);
        ResultMapping resultMapping = new ResultMapping.Builder(configuration, propName, columnLabel,
        autoMappings.put(propName, resultMapping);

Maybe this bug can fixed by adding the code below after "Class javaType = metaResultObject.getSetterType(propName);"

        if (javaType.isAssignableFrom(rm.getType()))
        	javaType = rm.getType();

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

To unsubscribe, e-mail: dev-unsubscribe@ibatis.apache.org
For additional commands, e-mail: dev-help@ibatis.apache.org

View raw message