|
From: Baum, K. <Kar...@Ta...> - 2004-04-14 02:22:46
|
I have encountered an issue in regards to validating beans backed by a
Map object while using the spring commons validator component. My form
is made to work with key value pairsbacked as a map. It has a field:
/**
* @return
*/
public Map getValue() {
return valueMap;
}
/**
* @param map
*/
public void setValue(Map map) {
valueMap = map;
}
The problem isn't specific to the validator adapter. The problem has to
do with the way Spring symbolizes a mapped property in the
BeanwrapperImpl class. Spring uses a '[' where as commons validator and
struts use '('. Another words a mapped property of firstName would look
like this in Spring:
value[firstName]
and this in commons validator:
value(firstName)
Commons validator uses '[' for indexed properties. Spring uses '[' for
both indexed and Mapped properties. I think the best place to fix this
problem is on the Spring side in the BeanWrapperImpl. We might as well
be consistent with struts and commons validator in regards to our
indexed and mapped property sytax. Perhaps we can support both
syntaxes.
Any thoughts?
Karl
|