First off, fantastic effort guys. This looks like a unbelievable release. The improvements over the previous version are just incredible. I¹m especially a fan of the new collection tag.
I¹ve been reading over the user guide and I have a couple of questions : In V2 and prior $value$ resulted in a string substitution while #value# used prepared statements and safe escaping. Is there still a string substitution option? I know it¹s not recommended, but we do have cases where we need it. With regards to he expression language support in the dynamic sql tags, is OGNL being used to evaluate the test fields or a variation of EL? The reason I ask is that EL supports tests like NOT EMPTY while OGNL doesn¹t. So ³value != null² isn¹t the same as ³NOT EMPTY value². Also the structure of the conditional tags follows the JSTL convention of choose, when, otherwise and not the more contemporary if, elseif, else. I guess the point I¹m trying to make is that in a world where using multiple frameworks (struts, jsf, etc) is the norm, it might be a good idea that some of the conventions used in IB3 follow what¹s been done in more established projects. For example if OGNL is used than I¹d prefer to use if, elseif, else as that¹s where my mind is and if I¹m using EL then I go to the choose, when, otherwise. It may be just me, and I¹m happy to concede that, but I find these little things really make a difference. Finally a question about Spring integration. One of the great selling points for iBatis has always been its tight spring integration. Is there any work going on at their end to integrate IB3 or is this something that we, the iBatis community, should be stepping up for? Again, a great release and I can¹t wait to try it. Z.