I was one of the requestors of this functionality. The practical use case for this was to be able to specify an object factory that could instantiate objects rather than having iBatis use the newInstance() method. This would allow for someone to specify an object factory that could potentially return objects, for example, from the Spring container. While the interface does define an API for creating such an object factory it is incomplete of what is actually needed. The interface defines a way to return requested objects but requires that the implementing class provide a no argument constructor. This has some serious limitations.
 
To better complete this requirement we need a way to inject the ResultObjectFactory into iBatis rather that iBatis instantiating the implementation. While I have found a way to get this to work within the Spring container I feel that it is less than elegant and would welcome the ability to inject the ResultObjectFactory into iBatis.
 

From: Jan Vissers <Jan.Vissers@cumquat.nl> [mailto:Jan Vissers <Jan.Vissers@cumquat.nl>]
Sent: Wednesday, August 30, 2006 10:30 PM
To: user-java@ibatis.apache.org
Subject: [2.2.0] Use case for ResultObjectFactory

I'm trying to figure out why/when/how one would use a
ResultObjectFactory - does anybody have a real practical use case for it?