I think your issue relates to a misunderstanding about the "property"
attribute. I see that you have added "ReportParameters" at the front
of all your property references. My guess is that you don't need
that. iBATIS would expect "ReportParameters" to be a property of your
parameter object - and I'm guessing that "ReportParameters" IS your
parameter object. So, remove "ReportParameters" and things will
likely improve.
Jeff Butler
On Wed, May 5, 2010 at 8:42 AM, devver <kmg203@googlemail.com> wrote:
>
> Thanks for your reply Jeff
>
> I am using something very similar (See below) but I am getting a host of
> error messages, including:
>
> --- Cause: com.ibatis.common.beans.ProbeException: Error getting ordinal
> list from JavaBean. Cause java.lang.NumberFormatException: For input string:
> ""
> Caused by: java.lang.NumberFormatException: For input string: ""; nested
> exception is com.ibatis.common.jdbc.exception.NestedSQLException:
>
> followed by:
>
> com.ibatis.common.beans.ProbeException: Error getting ordinal list from
> JavaBean. Cause java.lang.NumberFormatException: For input string: ""
>
> These are repeated several times.
>
> I pass a HashMap into the SQLMap. One of the instances is a ReportParameters
> instance. This is comprised of several properties but the important one as
> far as my SQL is concerned is an array of objects which themselves contain
> an array.
>
> My SQLMap dynanically builds a WHERE clause based on the ReportParameters
> 'outer' and 'inner' arrays. The <dynamic> block looks similar to this:
>
> <iterate prepend="AND" property="ReportParameters.outerArray"
> conjunction="OR" open="(" close=")">
> (
> #ReportParameters.outerArray[].someProperty#
> ...
>
> )
> <iterate prepend="AND" property="ReportParameters.outerArray[].innerArray"
> conjunction="AND" open="(" close=")">
> (
> #ReportParameters.outerArray[].innerArray[].anotherProperty#
> )
> </iterate>
> )
> </iterate>
>
> I'm not sure why this is happening at all. The syntax looks straight-forward
> and intuitive and yet it (or something) appears to crash iBatis.
> I have dumped the contents of ReportParameters just before I execute the SQL
> via my DAO. Everything looks as expected.
>
> The version of iBatis I am using is v2. The app uses ibatis-common-2.jar and
> ibatis-sqlmap-2.jar
>
> Jeff Butler-2 wrote:
>>
>> Assuming MyParameters is some object passed as a parameter object, and
>> that myOuterList is a property of MyParameters:
>>
>> <iterate property="myOuterList" ...>
>> <iterate property="myOuterList[].myInnerList"...>
>> #myOuterList[].myInnerList[].myProperty#
>> </iterate>
>> </iterate>
>>
>>
>> Jeff Butler
>>
>>
>> On Tue, May 4, 2010 at 2:09 PM, devver <kmg203@googlemail.com> wrote:
>>>
>>> Hi
>>>
>>> #Subsequent to the problems outline in this post:
>>> http://old.nabble.com/Problem-accessing-List-instance-property-via-%3Cisnull%3E-td28368852.html
>>>
>>> ... the problem has changed somewhat. The orignal SQL statement has been
>>> altered and we now have a structure which requries nested <iterate>
>>> elements.
>>>
>>> It looks like patches may have been introduced into IbAtis 2.x around
>>> 2006
>>> to enable this feature but I can't get it to work. Can someone please
>>> confirm the correct syntax? I had used somethign similar to this:
>>>
>>> <iterate property="MyParameters.myOuterList" conjunction="OR" open="("
>>> close=")">
>>> <!-- Some SQL -->
>>>
>>> <iterate proeprty ="MyParameters.myOuterList[].myInnerList"
>>> conjunction="AND" open="(" close=")">
>>>
>>> <!-- More SQL where I access
>>> #MyParameters.myOuterList.myInnerList[].myProperty# -->
>>>
>>> </iterate>
>>>
>>> </iterate>
>>>
>>> Any help gratefully received. Thanks
>>> --
>>> View this message in context:
>>> http://old.nabble.com/Help-with-iBatis-nested-%3Citerate%3E-syntax-tp28451833p28451833.html
>>> Sent from the iBATIS - User - Java mailing list archive at Nabble.com.
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: user-java-unsubscribe@ibatis.apache.org
>>> For additional commands, e-mail: user-java-help@ibatis.apache.org
>>>
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: user-java-unsubscribe@ibatis.apache.org
>> For additional commands, e-mail: user-java-help@ibatis.apache.org
>>
>>
>>
>
> --
> View this message in context: http://old.nabble.com/Help-with-iBatis-nested-%3Citerate%3E-syntax-tp28451833p28461065.html
> Sent from the iBATIS - User - Java mailing list archive at Nabble.com.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-java-unsubscribe@ibatis.apache.org
> For additional commands, e-mail: user-java-help@ibatis.apache.org
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: user-java-unsubscribe@ibatis.apache.org
For additional commands, e-mail: user-java-help@ibatis.apache.org
|