Spring Framework 3.1.1.RELEASE.
I fail to successfully bind the contents of a list of primitive types (their wrappers actually).
Model bean:
I tried the following configurations (FreeMarker view), but none worked:Code:class Bean { private List<Double> elements; public List<Double> getElements() { if (elements == null) elements = new ArrayList<>(); return elements; } public void setElements(List<Double> elements) { this.elements = elements; } public Double getElement(int pos) { if (elements == null || elements.size() <= pos) return null; return elements.get(pos); } public void setElement(int pos, Double element) { if (elements == null) elements = new ArrayList<>(pos+1); while (elements.size() < pos + 1) elements.add(null); elements.set(pos, element); } }
I get any of the following:Code:<@s.bind "bean.elements(0)"/> <@s.bind "bean.elements[0]"/> <@s.bind "bean.element(0)"/> <@s.bind "bean.element[0]"/>
What is the proper way to bind collections of primitives in Spring Web MVC?Code:org.springframework.beans.NullValueInNestedPathException: Invalid property 'elements' of bean class [com.company.Bean]: Could not instantiate property type [java.lang.Double] to auto-grow nested property path: java.lang.InstantiationException: java.lang.Double org.springframework.beans.InvalidPropertyException: Invalid property 'elements[0]' of bean class [com.company.Bean]: Illegal attempt to get property 'prices' threw exception; nested exception is org.springframework.beans.NullValueInNestedPathException: Invalid property 'elements' of bean class [com.company.Bean]: Could not instantiate property type [java.lang.Double] to auto-grow nested property path: java.lang.InstantiationException: java.lang.Double
Any resources I can find only deal with collections of beans, which DOES NOT work for me!


Reply With Quote
