Codebase list libibatis-java / 02d7c5d4-e829-49dd-be7c-f57abf9daad4/main release.txt
02d7c5d4-e829-49dd-be7c-f57abf9daad4/main

Tree @02d7c5d4-e829-49dd-be7c-f57abf9daad4/main (Download .tar.gz)

release.txt @02d7c5d4-e829-49dd-be7c-f57abf9daad4/mainraw · history · blame

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
Build Date: 2008/09/09 09:43
Build Number: 726

------------------------------
Next Version
------------------------------

 o 

------------------------------
 2.3.4
------------------------------

 o iBATIS-519 Autoresultmap thead safety

------------------------------
 2.3.3
------------------------------

 o Reintroduced fully defined ExtendedSqlMapClient interface for Spring compatibility
 o iBATIS-522 -- Null type causing TypeHandlerFactory to throw NPE
 o iBATIS-511 -- Added values to error messages
 o iBATIS-515 -- Added comments to DTD
 o iBATIS-244 -- configured type handler not used for insert


------------------------------
 2.3.2
------------------------------
 o Updated this release.txt file for 2.3.1
 o Made DTD backward compatible again.
 o Applied consistent lazy loading Set fix to all lazy loader implementations
 o Note that version 2.3.1 and beyond will throws exception for java bean specification violations
   
------------------------------
 2.3.1
------------------------------
 o Removed maxTransactions, maxRequests, maxSessions from configuration, all are now controlled by the resource providers
 o Fixed BATIS-391  - Cannot access Lists within custom objects.
 o Fixed IBATIS-388 - Add methods to unwrap all proxied objects
 o Fixed IBATIS-484 - Make setType method in JdbcTypeRegistry public
 o Fixed IBATIS-490 - Improper use of getColumnLabel()
 o Fixed IBATIS-494 - Improper NULL handling in Blob and Clob Type Handlers
 o Fixed IBATIS-497 - Improper use of hashCode in SqlExecuter
 o Fixed IBATIS-406 Bug in Ibatis sqlMap when one resultMap has multiple results that are resultMaps... then the groupby attribute only seems to work for the first embedded resultMap.
 o Fixed IBATIS-456 ClassCastException when mapping primitive arrays due to attempts to cast to object arrays made by iBatis
 o Fixed IBATIS-441 Multiple result sets support broken
 o Fixed IBATIS-497 Bug when add two same length and hashCode SQLs to a batch executor
 o Fixed IBATIS-484 oracle's user-defined objects not fully supported
 o Fixed IBATIS-391 Can not access Lists within custom objects.
 o Fixed IBATIS-359 Performance Improvement when No SecurityManager installed
 o Fixed IBATIS-439 Batching of statements does not work for stored procedures
 o Fixed IBATIS-435 Bug Using iBATIS 2.3.0 And Spring Framework
 o Fixed IBATIS-489 CacheModel.NULL_OBJECT should be Serializable to be used with non-in-memory caches
 o Fixed IBATIS-494 ClobTypeHandlerCallback handles NULLs incorrectly
 o Fixed IBATIS-419 LazyLoad object is not serializable.
 o Fixed IBATIS-490 When using implicit resultmap, the code fails throwing exception "Undefined Column Name"
 o Fixed IBATIS-487 lazy loading support java.util.Set interface
 o Fixed IBATIS-491 resultMap support java 5 enum to jdbcType VARCHAR
 o Fixed IBATIS-388 Add methods to unwrap all Proxied Objects
 o Fixed IBATIS-433 ResultSetLogProxy doesn't log null value incorrectly
 o Fixed IBATIS-445 SqlText setText function and tab (\t) character in text definition
 o Fixed IBATIS-479 Typo on com.ibatis.sqlmap.engine.conifg package
 o Fixed IBATIS-387 bug in Jdk14LoggingImpl
 o Fixed IBATIS-458 maxWait in Throttle can fail.
 o Fixed IBATIS-467 flushInterval is limited to hours

------------------------------
 2.3.0 - Dec 01, 2006
------------------------------
 o DEPRECATED All PaginatedList related features due to misuse, minimal applicability and inflexibility
 o DEPRECATED DAO Framework -- Removed from primary distribution, available as a separate download
 o Removed DAO framework from Subversion source tree (tagged before removal)
 o Changed deployment file naming convention, dropped "DBL" and lowercased all
 o Merged common and sqlmap jar files (no more DAO means there's no point in keeping commons separate)
 o Implemented transaction level PreparedStatement caching
 o Fixed IBATIS-335 - Don't call setQueryTimeout if no value specified
 o Fixed IBATIS-338 - NestedSqlException stack overflow
 o Fixed IBATIS-340 - Provide ability to override the default encoding in the Resources class
 o Fixed IBATIS-353 - Probe exception when using inheritance hierarchies
 o Fixed IBATIS-366 - Use ResultObjectFactory to create nested classes
 o Fixed IBATIS-367 - Inner class type handler is not handled correctly within maps
 o Fixed IBATIS-373 - Allow iBATIS to build SqlMapClient from InputStream
 o Fixed IBATIS-374 - Allow <resultMap> with no <result> - must extend another <resultMap>
 

------------------------------
 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 (e.g. setters)
 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
 
 
------------------------------
 2.1.7 - Jan 21, 2006
------------------------------

 o Fixed IBATIS-218 'i' character in property names, with Turkish locale
 o Fixed IBATIS-219 NoClassDefFoundError: oracle/toplink/sessions/UnitOfWork
 o Fixed IBATIS-228 Exception is thrown by TransactionManager when multiple commits are issued against a started transaction.
 o Fixed IBATIS-229 Method getWriteablePropertyNames in com.ibatis.common.beans.ComplexBeanProbe gets the readable property names
 o Fixed IBATIS-220 Null Pointer in SqlExecutor.handleResults where ResultSet is null.
 o Fixed IBATIS-213 SELECT statement returns unexpected result when 'groupBy' and 'nullValue' are specified in resultMaps.
 o Fixed IBATIS-221 Can't store a List in a Map 
 o Fixed IBATIS-223 Thread deadlock due to CacheModel.flush() 

------------------------------
 2.1.6 - Nov 5, 2005
------------------------------

 o Fixed IBATIS-198 Call "getDataSource()" of SqlMapClientImpl will cause application to hang
 o Fixed IBATIS-179 Binaries on webpage use old Hibernate
 o Fixed IBATIS-174 CacheModel does not support caching null results
 o Fixed IBATIS-197 Call "getDataSource()" of SqlMapClientImpl will cause application to hang
 o Fixed IBATIS-131 Fix use of list[]-notation in propertyattributes of dynamic tags
 o Fixed IBATIS-173 Incorrect resultset retrieve when calling stored procedure
 o Fixed IBATIS-194 No resultSet found when executing SQL Server stored procedure.
 o Fixed IBATIS-196 can't use dynamic replace data-source-type over IBATIS ver 2.0.9 library
 o Fixed IBATIS-191 operation(insert and update) Oracle's(OCI) CLOB and BLOB fail, CLOB will close tomcat, BLOB will miss any DATA
 o Fixed IBATIS-193 Hidden jar dependicity for iBatis DBL 2.1.5
 o Fixed IBATIS-175 ResultSetLogProxy doesn't log the result properly
 o Fixed IBATIS-195 Sqlmap DTD: include tag not permitted in selectKey element
 o Fixed IBATIS-172 implicit mapping fails on nested column aliases
 o Fixed IBATIS-185 SqlMapClasspathEntityResolver - Offline public ID resolution value ignored 

------------------------------
 2.1.5 - July 17, 2005
------------------------------

 o Fixed IBATIS-136 groupBy not carried forward to extended result maps
 o Fixed IBATIS-139 discriminator being applied to too many result maps (thanks Sven)
 o Fixed IBATIS-152, 149, 116 null result sets now handled properly by JDBC logging classes (thanks Sven)
 o Fixed IBATIS-146 consumes additional result sets before retrieving output params (JTDS fix)
 o Fixed IBATIS-130 parameter maps don't allow for complete TypeHandler implementations
 o Fixed IBATIS-148 parameter maps don't allow for complete TypeHandler implementations
 o Removed dependency on Commons Logging, will autodetect and use Commons Logging, Log4J, JDK 1.4 or no logging
 o Improved entity resolvers to be smarter, checks both system and public IDs, and both ibatis.com and apache.org  

------------------------------
 2.1.0 - May 16, 2005
------------------------------

 o Added <discriminator> and <subMap> tags for class inheritance support
 o Added IBATIS-95 removeFirstPrepend attribute to all tags 
 o Added IBATIS-95 open and close attributes to all dynamic tags to handle complex queries with bracketing 
 o Added IBATIS-35 to allow duplicate type aliases
 o Fixed IBATIS-45 Removed JavaBeanProbe/MapProbe in favor of ComplexBeanProbe 
 o Fixed IBATIS-79 Problem with nested groupBy resultMaps
 o Fixed IBATIS-78 JDBC driver properties does not work when using DBCP
 o Fixed IBATIS-42 bug that prevented dynamic tags from being nested inside an iterate tag
 o Fixed IBATIS-112 bug that will now allow for the $[]$ notation to be used.
 o Fixed IBATIS-45 ProbeExceptions with complex beans
 o Fixed IBATIS-79 Problem with nested groupBy resultMaps
 o Fixed IBATIS-46 xml parsing issue using jdk 1.3
 o Fixed IBATIS-102 duplicate code in the SqlMapConfigParser.java
 o Fixed IBATIS-101 add remapResults attribute to procedure tag in sql-map-2.dtd
 o Changed SQL executor to always call .execute instead of .executeQuery and .executeUpdate
 
------------------------------
 2.0.9B - Feb 20, 2005
------------------------------

 o Rebuilt on Feb 20th to fix incomplete ZIP file
 o Fixed IBATIS-24 Add use="true" to javadoc tasks
 o Fixed IBATIS-25 Included com.ibatis.common not included in JavaDoc
 o Fixed IBATIS-57 Deprecated ScriptRunner
 o Fixed IBATIS-47 Add Table of Contents to SqlMaps developer guide
 o Fixed IBATIS-68 Add PrameterSetter's interface ( getPreparedStatement() )
 o Fixed IBATIS-55 Throws ArrayIndexOutOfBoundsException when call queryForObject
 o Fixed IBATIS-41 Sql fragments donĀ“t use namespaces
 o Fixed IBATIS-51 isParameterAvailable for Maps always returns true
 o Fixed IBATIS-66 com.ibatis.common.util.Throttle not decrementing Session counter causes application to hang
 o Fixed IBATIS-61 Inconsistent type handler handling
 o Fixed IBATIS-70 iBatis Caching Should Not Rely on hashCode Alone
 o Fixed IBATIS-72 Placeholders in sqlmap are not resolved in config
 o Fixed IBATIS-74 Problem using a "url" based properties file
 o Fixed IBATIS-34 Exception while serializable NULL value (CacheModel)

------------------------------
 2.0.9 - Dec 31, 2004
------------------------------

 o Added solution for N+1 selects for any number of 1:M and M:N relationships.
 o Added groupBy="..." for Result Maps to deal with repeating groups.
 o Added resultMap="..." to result mapping to deal with sub groups.
 o Added remapResults="true|false" remapping of dynamic result set metadata.
 o Added support for isolation levels specified in .startTransaction()
 o Added support for SQL "includes" to reduce/eliminate repeated SQL
 o Added default CLOB/BLOB support that should work for most databases (thanks to Alexander and Martin)
 o Added TopLink DAO Transaction Manager and Template (thanks to Wayne Gentile!)
 o Custom type handlers can now directly implement the TypeHandler interface
 o Refactored Builder/Parser to be more maintainable (nodelets)
 o Verified that duplicate statement names throw an exception. [982534]
 o SqlExecutor now always exhausts result sets with ps.getMoreResults()
 o Fixed new format inline parameter parsing error [ibatis-23]

------------------------------
 2.0.8 - Nov 26, 2004
------------------------------

 o Probes now always return true for hasReadable/hasWriteable property checks.
 o Fixed OUT/INOUT parameters to proc not retrieved properly (ibatis-12)
 o Verified missing columns throw an exception (ibatis-16)
 o Completely $supplied$ SQL statements are not supported (ibatis-17)
 o Verified parameter type handlers are applied (ibatis-ll)
 o Fixed cache model size of 1 disables caching (ibatis-7)
 o Fixed LRU cache memory leak (ibatis-1)
 o Added commitRequired attribute to transactionManager to force commit even on query (ibatis-10,3)

------------------------------
 2.0.7 - Oct 03, 2004
------------------------------

 o Added new inline parameter map format (#columnName,javaType=string,jdbcType=VARCHAR# etc.)
 o Added direct Set type property support
 o Added "OBJECT" type handler mapping to help deal with  unsupported types
 o Added better exception messages and improved OJB DAO transaction support
 o Fixed complex properties being instantiated, even if ultimate value is null
 o Fixed DAO builder so that parameter properties override file props
 o Fixed CTH so nulls are now sent to custom setParameter
 o Fixed DAO unclosed Connection in JTA transaction 
 o Fixed DAO possible (unlikely) unclosed JDBC connection

------------------------------
 2.0.6 - Sep 18, 2004
------------------------------

 o Changed complex props so select won't be executed if param null
 o Fixed non-caching null cache result bug
 o Fixed removeObject bug from fifo and lifo cache
 o Fixed locale issue with JavaBean property matching
 o Fixed unclosed statement if result set fails in MS SQL Server
 o Fixed comments within dao.xml
 o Fixed undetected duplicate statement names in a single sql map
 o Fixed inconsistent type handler for Map params without paramclass
 o Fixed SQLExceptin when populating complex properties
 o Fixed setters being called for non-OUT parameter objects

------------------------------
 2.0.5 - Aug 11, 2004
------------------------------

 o Added Custom Type Handlers!  (see TypeHandlerCallback)
 o Added OJB DAO support (Thanks to Pedro Salgado)
 o Added passthrough methods for Hibernate DAO template
 o Added JdbcDaoTemplate support to most DAO TX managers
 o Deprecated JtaDaoTemplate, use JdbcDaoTemplate instead
 o Fixed reserved XML character encoding for XML types
 o Fixed Autocommit (true) in JdbcDaoTransaction
 o Fixed Expanded entity references in XML (for &gt; etc.)
 o Fixed base probe indexed property accessor
 o Fixed doubled-up property element for complex DOM props

------------------------------
 2.0.4 - Jul 25, 2004
------------------------------

 o Deprecated getUserConnection() (use getCurrentConnection())
 o Added getCurrentConnection()
 o Added openSession(Connection) for easier user connections
 o Improved user provided connection implementation
 o Fixed logging bug that prevented SQL from being logged
 o Fixed resultSetType prepareStatement overloaded method call  
 o Fixed nullValue replacement when used with dynamic statements

------------------------------
 2.0.3 - Jul 16, 2004
------------------------------

 o Added fetchSize and resultSetType attributes to statement and select
 o Added parameter count to CacheKey equals for paranoid equality
 o Removed redundant bit shift in CacheKey update
 o Refactored cache locking pattern to improve concurrent access to cache models
 o Improved caching to avoid redundant connection reservations
 o New property to stop autocommit from being called in EXTERNAL TX Manager
 o Fixed JDBC types being ignored for hashmap parameter classes
 o Fixed some rare misleading error messages

------------------------------
 2.0.2 - Jun 22, 2004
------------------------------

 o Fixed nested List in Map parameter (e.g. #list[].id#)

------------------------------
 2.0.1 - Jun 21, 2004
------------------------------

 o Added DefaultAutoCommit property to EXTERNAL transaction manager
 o Removed redundant throws from template methods

------------------------------
 2.0.0 Final - Jun 18, 2004
------------------------------

 o Added SqlMapDaoTemplate wrapper methods (wraps SqlMapExecutor methods)
 o Fixed "double.nested" complex properties (no WRITEABLE prop found)
 o Fixed finalizer triggering lazy loader
 o Fixed Paginated List caching
 o Fixed NPE on complex prop without parameter class
 o Fixed default serialize setting on cache model and improved error msg

------------------------------
 2.0.0 RC5 - May 24, 2004
------------------------------

 o Fixed NPE when no DataSource configured (for Spring)
 o Fixed uppercase bean property support
 o Fixed result map getter based typing vs. setter
 o Fixed javaType attribute support for JavaBeans
 o Fixed caching of statements containing $simple$ dynamic sql
 o Fixed List in Map iterate tag problem
 o Fixed nullValue for primitive result classes of nested select statements

------------------------------
 2.0.0 RC4 - May 11, 2004
------------------------------

 o IMPORTANT: Renamed queryForList(String, Object, RowHandler) BACK TO queryWithRowHandler
 o Added serialize option to cache model to improve concurrent R/W cache performance
 o Added DOM type support for results and parameters.
 o Added DaoManager.getDao(class, contextId) to support for multiple DAO impls
 o Added access to SqlMapTransactionManager from SQL Map DAOs
 o Released all DTD constraints for pluggable components (cache, datasource, txmgr, daotx)
 o Fixed threading issue with StandardDaoManager

------------------------------
 2.0.0 RC3 - Apr 19, 2004
------------------------------

 o Updated DBCP support and centralized config
 o Newlines (\r, \n) are now stripped from SQL
 o Properties are passed from DAO builder to SQL Maps builder
 o Improved OSCache key uniqueness

------------------------------
 2.0.0 RC2 - Apr 11, 2004
------------------------------

 o Added SqlMapClient.flushDataCache()
 o Added "context." prefix for JNDI InitialContext properties
 o Added Resources.setDefaultClassLoader()
 o Fixed specified JDBC type problem with DATE etc.
 o Fixed DAO JDBC connection not being returned
 o Fixed queries with no result map error message
 o Fixed cache key parameter order problem
 o Fixed multiple calls to ResultSet when logging (ODBC/MSAccess problem)
 o Fixed unwrapping of proxy exceptions
 o Fixed convert task temp file bug
 o Fixed specific statement elements using cache model

------------------------------
 2.0.0 RC1 - Mar 20, 2004
------------------------------

 o Commit/rollback is now only applied if an update occurs.
 o Improved error messages (please comment if they still suck)
 o Fixed dynamic SQL with multiple params via result mapped statement
 o Fixed statement w/ cache models fail with class Cast Exception
 o Fixed procedure parameterMap instead of resultMap JavaBeanDataExchange.setData()
 o Fixed procedure calls with no params fails with NPE
 o Fixed duplicate parameters (#value#...#value#) causes out of bounds exception

------------------------------
 2.0.0 Beta 5 - Mar 8, 2004
------------------------------

 o Added DAO properties forwarding to transaction managers (e.g. SQL Map config)
 o Added support for both file prop config and prog. properties (file overrides prog.)
 o Fixed SQL Map statement conversion issue (empty SQL)
 o Fixed DAO passthrough methods
 o Fixed DAO commit/close connection
 o Fixed Property name reuse in parameter maps (PropertyAccessPlan)

------------------------------
 2.0.0 Beta 4 - Mar 2, 2004
------------------------------

 o Includes first "sneak peek" of DAO 2.0 Framework 
 o Added DAO 1.x TX Pool classes for real SQL Maps 2.0 support
 o Added SqlMapSession.close()
 o Refactored SqlMapSession and SqlMapClient interfaces
 o Renamed SqlMapClient.getSession() to .openSession()
 o Renamed files to ibatis-sqlmap-2.jar, ibatis-common-2.jar and ibatis-dao-2.jar
 o Moved compatibilitiy JARs and DAO 1.x to lib/optional/compatibility
 o Fixed hasReadable/WriteableProperty check bug
 o Fixed addBatch Bug
 o Fixed Result Map nullValue type conversion

------------------------------
 2.0.0 Beta 3 - Feb 18, 2004
------------------------------

 o Added new namespaces
 o Renamed <procedure> output="true" to mode="IN|OUT|INOUT"
 o Renamed queryWithRowHandler to queryForList(String, Object, RowHandler)
 o Upgraded DAO JAR to version 1.3.1
 o Fixed iterative $substitutions[]$
 o Fixed multiple iterations in a mapped statement
 o Fixed pure output parameters for stored procs
 o Fixed stored proc trimming problem

------------------------------
 2.0.0 Beta 2 - Jan 18, 2004
------------------------------

 o Changed (IMPORTANT) cacheModel attribute readWrite="true" to readOnly="false" (more accurate)
 o Ant task to convert SQL Maps
 o Updated example log4j.properties and included in /debug directory.
 o Implemented session based caching
 o Moved ErrorContext to request scope
 o Implemented reset methods for scopes
 o Skipped records use rs.absolute() if ResultSet type is not TYPE_FORWARD_ONLY
 o Fixed connection proxy logging bug (no output).
 o Fixed insert element without selectKey (NPE)
 o Fixed LRU/FIFO aliases (swapped)
 o Fixed legacy properties left in converted map files

------------------------------
 2.0.0 Beta 1 - Jan 11, 2004
------------------------------

IMPORTANT: 2.0 initially focuses on compatibility, stability and quality.  Very
           few new features have been added, but the new architecture should make
           make possible the addition of many great new features.

 o Complete, from the ground up rewrite.
 o Completely new, but familiar API and XML document structure
 o Compatibility API for 99% 1.x backward compatibility
 o New and improved array[] support
 o New and improved stored proc support (including output params)
 o New support for auto-gen keys
 o New URL resource loading of config files
 o New type aliases for more concise mappings
 o New XML data types for mappings (direct XML to DB)
 o New and improved lazy loading of all complex types
 o Improved overall performance
 o Reduced library dependencies
 o Much more...and more yet to come