>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 > > >