>From your JIRA "In our application we expect a list of HashMaps at certain 
>locations."... I would suggest you make a new JIRA feature request (including 
>some sample SqlMap files of how you want to use it). If we reopen it will be 
>put in another category in JIRA which no-one ever looks in.

For your change, I'm not 100% sure it won't break any existing iBATIS 
configuration. And I'm not really in favor of it.

Best regards,
Sven

>----- Oorspronkelijk bericht -----
>Van: Ext_Friedrich, Stefan [mailto:[EMAIL PROTECTED]
>Verzonden: maandag, maart 13, 2006 09:41 AM
>Aan: dev@ibatis.apache.org
>Onderwerp: AW: [jira] Closed: (IBATIS-265) Map data into HashMaps: HashMap of 
>List of HashMaps
>
>We don't only want to have a List of HashMaps....as described in the
>topic:
>
>A HashMap of Lists of HashMaps NOT A List of HashMaps!!!!
>
>The queryForList is well known....
>
>Please reopen!
>
>Stefan Friedrich
>
>-----------------------------
>
>    Resolution: Invalid
>     Assign To: Sven Boden
>
>Use a HashMap as resultClass and use queryForList()... you will get a
>list of HashMaps. No changes are required as it's already supported.
>
>
>> Map data into HashMaps: HashMap of List of HashMaps
>> ---------------------------------------------------
>>
>>          Key: IBATIS-265
>>          URL: http://issues.apache.org/jira/browse/IBATIS-265
>>      Project: iBatis for Java
>>         Type: Improvement
>>     Reporter: Stefan Friedrich
>>     Assignee: Sven Boden
>>     Priority: Minor
>
>>
>> We tried to implement the HashMaps as results for our queries. The
>problem is, that whenever a HashMap is set as the resultClass, a
>queryForObject is called and so, every select can only return ONE
>result. In our application we expect a list of HashMaps at certain
>locations. The solution for our problem would be very simple and - in
>our opinion - would work with only three new lines of code:
>> The Method BasicResultMap.getResults(RequestScope request, ResultSet
>rs) the targetType for further calls is set:
>> if (resultClass == null) {
>>      throw new SqlMapException("The result class was null when trying
>to get results for ResultMap named " + getId() + ".");
>> } else if (Map.class.isAssignableFrom(resultClass)) {
>>      columnValues[i] = getNestedSelectMappingValue(request, rs,
>mapping, Object.class);
>> } else if (DomTypeMarker.class.isAssignableFrom(resultClass)) {
>>      Class javaType = mapping.getJavaType();
>>      if (javaType == null) {
>>              javaType = DomTypeMarker.class;
>>      }
>>      columnValues[i] = getNestedSelectMappingValue(request, rs,
>mapping, javaType);
>> } else {
>>      Probe p = ProbeFactory.getProbe(resultClass);
>>      Class type = p.getPropertyTypeForSetter(resultClass,
>mapping.getPropertyName());
>>      columnValues[i] = getNestedSelectMappingValue(request, rs,
>mapping, type);
>> }
>> The part that needs to be changed is in the first "else-Statement".
>> if (resultClass == null) {
>>      throw new SqlMapException("The result class was null when trying
>to get results for ResultMap named " + getId() + ".");
>> } else if (Map.class.isAssignableFrom(resultClass)) {
>>      Class javaType = mapping.getJavaType();
>>      if (javaType == null) {
>>              javaType = Object.class;
>>      }
>>      columnValues[i] = getNestedSelectMappingValue(request, rs,
>mapping, javaType);
>> } else if (DomTypeMarker.class.isAssignableFrom(resultClass)) {
>>      Class javaType = mapping.getJavaType();
>>      if (javaType == null) {
>>              javaType = DomTypeMarker.class;
>>      }
>>      columnValues[i] = getNestedSelectMappingValue(request, rs,
>mapping, javaType);
>> } else {
>>      Probe p = ProbeFactory.getProbe(resultClass);
>>      Class type = p.getPropertyTypeForSetter(resultClass,
>mapping.getPropertyName());
>>      columnValues[i] = getNestedSelectMappingValue(request, rs,
>mapping, type);
>> }
>> As you can see, the changes would have no effect, if no javaType was
>set. But for our concerns, we would set the javaType to
>java.util.ArrayList and everything would be just fine!
>> Stefan
>
>--
>This message is automatically generated by JIRA.
>-
>If you think it was sent incorrectly contact one of the administrators:
>   http://issues.apache.org/jira/secure/Administrators.jspa
>-
>For more information on JIRA, see:
>   http://www.atlassian.com/software/jira
>
>
>


Reply via email to