You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user-java@ibatis.apache.org by Sundar Sankar <fa...@gmail.com> on 2008/07/18 01:12:17 UTC

Interesting Logger Bug

Hi,
     I happened to notice this pattern of logging that Ibatis was defecting
on.I am surprised it hasnt been mentioned earlier. Anyways, this is the
situation, Say you are calling a procedure that returns a ref-cursor. Your
resultMap for the refcursor is something like this

<resultMap id="map1" class="class1" groupBy="prop1">
        <result property="prop1" column="COL1" />
        <result property="prop2" resultMap="map2"/>
    </resultMap>

    <resultMap id="map2" class="class2" groupBy="prop3">
        <result property="prop3" column="COL3" />
        <result property="prop4" column="COL4" />
        <result property="prop5" column="COL5"/>
    </resultMap>

If there was any problem in setting map2, say the propertyname was wrong,
column name was wrong, the type of property isnt right etc or any mistake
for that matter, The only exception Ibatis throws is


--- Cause: com.ibatis.sqlmap.client.SqlMapException: There is no result map
named map2 in this SqlMap.


The only way to figure out the error is to make the resultset directly
referece map2. If we have the single resultMap in the file, then Ibatis
exactly points to which property has a problem and what the problem is.
Otherwise it doesnt seem to be able to find out issues in the map2.

-Sundar

Re: Interesting Logger Bug

Posted by Clinton Begin <cl...@gmail.com>.
I have not noticed it.  Can you write a simple unit test with a few maps and
classes to demonstrate it?

Clinton

On Sun, Jul 20, 2008 at 11:09 AM, Sundar Sankar <fa...@gmail.com>
wrote:

> Hi,
> Has any body noticed this behaviour? Is there a solution for this?
> -S
>
>
> On Thu, Jul 17, 2008 at 4:12 PM, Sundar Sankar <fa...@gmail.com>
> wrote:
>
>> Hi,
>>      I happened to notice this pattern of logging that Ibatis was
>> defecting on.I am surprised it hasnt been mentioned earlier. Anyways, this
>> is the situation, Say you are calling a procedure that returns a ref-cursor.
>> Your resultMap for the refcursor is something like this
>>
>> <resultMap id="map1" class="class1" groupBy="prop1">
>>         <result property="prop1" column="COL1" />
>>         <result property="prop2" resultMap="map2"/>
>>     </resultMap>
>>
>>     <resultMap id="map2" class="class2" groupBy="prop3">
>>         <result property="prop3" column="COL3" />
>>         <result property="prop4" column="COL4" />
>>         <result property="prop5" column="COL5"/>
>>     </resultMap>
>>
>> If there was any problem in setting map2, say the propertyname was wrong,
>> column name was wrong, the type of property isnt right etc or any mistake
>> for that matter, The only exception Ibatis throws is
>>
>>
>> --- Cause: com.ibatis.sqlmap.client.SqlMapException: There is no result
>> map named map2 in this SqlMap.
>>
>>
>> The only way to figure out the error is to make the resultset directly
>> referece map2. If we have the single resultMap in the file, then Ibatis
>> exactly points to which property has a problem and what the problem is.
>> Otherwise it doesnt seem to be able to find out issues in the map2.
>>
>> -Sundar
>>
>
>

Re: Interesting Logger Bug

Posted by Sundar Sankar <fa...@gmail.com>.
Hi,
Has any body noticed this behaviour? Is there a solution for this?
-S

On Thu, Jul 17, 2008 at 4:12 PM, Sundar Sankar <fa...@gmail.com> wrote:

> Hi,
>      I happened to notice this pattern of logging that Ibatis was defecting
> on.I am surprised it hasnt been mentioned earlier. Anyways, this is the
> situation, Say you are calling a procedure that returns a ref-cursor. Your
> resultMap for the refcursor is something like this
>
> <resultMap id="map1" class="class1" groupBy="prop1">
>         <result property="prop1" column="COL1" />
>         <result property="prop2" resultMap="map2"/>
>     </resultMap>
>
>     <resultMap id="map2" class="class2" groupBy="prop3">
>         <result property="prop3" column="COL3" />
>         <result property="prop4" column="COL4" />
>         <result property="prop5" column="COL5"/>
>     </resultMap>
>
> If there was any problem in setting map2, say the propertyname was wrong,
> column name was wrong, the type of property isnt right etc or any mistake
> for that matter, The only exception Ibatis throws is
>
>
> --- Cause: com.ibatis.sqlmap.client.SqlMapException: There is no result map
> named map2 in this SqlMap.
>
>
> The only way to figure out the error is to make the resultset directly
> referece map2. If we have the single resultMap in the file, then Ibatis
> exactly points to which property has a problem and what the problem is.
> Otherwise it doesnt seem to be able to find out issues in the map2.
>
> -Sundar
>