iBATIS 2.2.0 is released. The website will be updated as soon as the Apache servers propogate the site changes.
So that you don't have to wait, here's the "press release"...
This is probably the most significant iBATIS 2.x release in at least a
year. If you haven't upgraded in a while, this would be the one to go
for. This update includes 25 new minor features 15 bug fixes and 3 new
major features including support for Oracle cursors, multiple result
sets and private bean properties. This is also the first release that
requires JDK 1.4 (as voted nearly a year ago).
The full changelog is below (as well as included with the distribution). And so you don't have to wait for the download...
PS: A vote to move to GA will follow in a separate email.
2.2.0 - Aug 15, 2006
o Removed iBATIS 1.x compatibility libraries, they are no longer supported.
o Removed deprectated JtaDaoTemplate
o Removed custom nested transactions (JDBC
1.4 now required)
o Added support for ResultSet OUT params from stored procs (e.g. Oracle Ref Cursor)
o Added support for Multiple ResultSets mapped to corresponding ResultMaps or ResultClasses.
o Added support for private properties.
o Fixed IBATIS-320 - openSession() returns same object
o Fixed IBATIS-325 - DateTypeHandler uses static SimpleDateFormat instance. Not thread-safe.
o Fixed IBATIS-224 - isNotNull node causes typehandler mappings in statement to fail
o Fixed IBATIS-249 - Race conditions in Throttle lead to thread blockage popping items from ThrottledPools under stress
o Fixed IBATIS-250 - CLONE -SELECT statement returns unexpected result when 'groupBy' and 'nullValue' are specified in resultMaps.
o Fixed IBATIS-258 - Invalid DOCTYPE instruction in example SQL Map file in documentation bundle.
o Fixed IBATIS-260 - Hash conflict with groupBy resultMaps
o Fixed IBATIS-261 - CLONE -The method executor.executeBatch
() always returns 0.
o Fixed IBATIS-269 - SqlExecutor calls getMoreResults without checking supportsMultipleResultSets
o Fixed IBATIS-281 - Nested iterate tags does not work
o Fixed IBATIS-286 - close session upon null user connection
o Fixed IBATIS-293 - Fix use of list-notation in propertyattributes of dynamic tags
o Fixed IBATIS-322 - consistently use the Resources class methods rather than Class.forName()
o Fixed IBATIS-323 - JDBC driver properties not added to driver/connection when using DBCP
o Fixed IBATIS-331 - nested result mappings not propagated to extended result maps
o Added IBATIS-22 - Specify Query Timeout
o Added IBATIS-50 - Ability to override the default bean creation mechanism
o Added IBATIS-109 - Make PaginatedList work with IBM's broken JDBC driver
o Added IBATIS-127 - PropertyAccessPlan should put more context information when throwing an exception
o Added IBATIS-128 - Detect illegal overloaded JavaBeans properties methods (
o Added IBATIS-150 - Requirement and benefit of groupBy attribute is not clear in SQL Maps Dev Guide
o Added IBATIS-159 - A new executeBatchDetailed() method that returns all driver information from batch execution
o Added IBATIS-166 - Add overloads for common SqlMapClient methods without parameterObject parameter
o Added IBATIS-167 - Improvements in SimpleDataSource
o Added IBATIS-176 - Add support for DECIMAL/NUMERIC scale on Stored Procedure Output Parameters
o Added IBATIS-204 - Cache layer does no logging of puts, gets, flushes, or removals.
o Added IBATIS-205 - Change access modifiers from private to protected in many classes to allow developers to create extensions and subclasses to the iBatis classes
o Added IBATIS-209 - Inline TypeHandler Support
o Added IBATIS-225 - Reuse resultmap for single bean property
o Added IBATIS-230 - Warn when two ids of a <sql> tag are identical
o Added IBATIS-242 - Add property getters for ParameterSetter index and ResultGetter name and index
o Added IBATIS-263 - Ignore case on type aliases
o Added IBATIS-271 - Create no arg methods in the SqlMapDaoTemplate
o Added IBATIS-277 - selectKey execution order attribute
o Added IBATIS-210 - Enum within Collection is not mapped to custom TypeHandler
o Added IBATIS-217 - I would like to see korean document on iBATIS website's document page
o Fixed IBATIS-275 - Add comments only to indicate flushDataCache(string) always uses namespace.
o Added IBATIS-308 - fetchSize for procedures
o Added IBATIS-305 - corrected the documentation about logging, and added some methods to select specific log implementations
o Added IBATIS-311 - Allow removeFirstPrepend to fire repeatedly in an <iterate> tag
o Added IBATIS-321 - Add logging of prepare operations