ibatis-user-java mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Clinton Begin" <clinton.be...@gmail.com>
Subject Re: TypeHandler on ParamterMap not getting invoked
Date Tue, 02 Sep 2008 18:00:49 GMT
LOL  good catch Jeff... I didn't even notice that.

FWIW:  iBATIS 3 resolves this inconsistency.  No more question marks
anywhere... :-)

Clinton

On Tue, Sep 2, 2008 at 11:45 AM, Jeff Butler <jeffgbutler@gmail.com> wrote:
> If you use a <parameterMap>, then you must use question marks as markers in
> your statement.  I suggest you skip the parameter map completely and specify
> the type handler in the statement:
>
> #keyList[],handler=com.jrapp.ibatis.KeyHandlerCallback#
>
> BTW - declared parameter maps will likely go away with iBATIS 3 - we don't
> like them AT ALL for this exact reason - they are too confusing to use.
>
> Jeff Butler
>
> On Tue, Sep 2, 2008 at 12:32 PM, J R <power_of_s@yahoo.com> wrote:
>>
>> Clinton this does not seem to work. Any other ideas? Any other way around
>> to
>> handle this?
>>
>> Thanks!
>>
>>
>> Clinton Begin wrote:
>> >
>> > Upgrade to 2.3.3
>> >
>> > Cheers,
>> > Clinton
>> >
>> > On Thu, Aug 28, 2008 at 5:00 PM, J R <power_of_s@yahoo.com> wrote:
>> >
>> >>
>> >> I have a parameterClass which holds List and a Long, and I have to
>> >> invoke
>> >> a
>> >> typeHandler on List to fit some custom logic. But seems like the
>> >> typeHandler
>> >> is not getting invoked.
>> >>
>> >> Intent is to have typeHandler invoked so that I can customize the items
>> >> in
>> >> the List. Is typeHandler invoked for each reference to list element? or
>> >> am
>> >> I
>> >> doing something wrong?
>> >>
>> >> <parameterMap id="queryCustomization"
>> >> class="com.jrapp.customizations.QueryObject">
>> >>        <parameter property="keyCount" />
>> >>        <parameter property="keyList"
>> >> typeHandler="com.jrapp.ibatis.KeyHandlerCallback" />
>> >> </parameterMap>
>> >>
>> >> public class QueryObject{
>> >>
>> >>        private Long keyCount = 0;
>> >>        private ArrayList KeyList = new ArrayList();
>> >>
>> >>       // With proper getters and setters
>> >> }
>> >>
>> >> Snippet of ibatis sqlmap:
>> >>
>> >> <dynamic>
>> >>      <isGreaterThan property="keyCount" compareValue="0">
>> >>      and (
>> >>            q.objectListKey in (
>> >>                     <iterate property="keyList" conjunction=",">
>> >>                             #keyList[]#
>> >>                      </iterate>
>> >>                     )
>> >> </dynamic>
>> >>
>> >> ..So I expect that on "keyList[]" reference in above sqlmap,
>> >> typehandler
>> >> would be invoked. Is that wrong assumption? Any way to achieve this?
>> >>
>> >> Thanks!
>> >> --
>> >> View this message in context:
>> >>
>> >> http://www.nabble.com/TypeHandler-on-ParamterMap-not-getting-invoked-tp19210666p19210666.html
>> >> Sent from the iBATIS - User - Java mailing list archive at Nabble.com.
>> >>
>> >>
>> >
>> >
>>
>> --
>> View this message in context:
>> http://www.nabble.com/TypeHandler-on-ParamterMap-not-getting-invoked-tp19210666p19274746.html
>> Sent from the iBATIS - User - Java mailing list archive at Nabble.com.
>>
>
>

Mime
View raw message