I have a HashMap in my Action class:
private Map<String, String> ids = new HashMap<String, String>();
In jsp I'm trying to set this hashmap like this:
<input type="text" name="ids[0].key" value="key">
<input type="text" name="ids[0]" value="value">
But when after submit, when I iterate over the map in the action like this:
if(ids!=null){
for(Map.Entry<String, String> entry : ids.entrySet()){
system.out.println(entry.getKey()+"-"+entry.getValue());
}
}
I only get "0-value" instead of "key-value"
How Can I do what I want? Can someone help me with this?
Trying to set values in a
HashMap
in a JSP file is a very bad idea. To stick with best practice and lead a happy life, you should revisit your design. You can post the data to the server side (All input values from JSP) and then get the values from request to store in aHashMap
collection as per your requirement would be a better option.You have keys of type
String
and therefore should be mapped like strings. For exampleThen you will get key
'0'
and value that was provided by OGNL.About indexed property names and
createIfNull
setting you can find in the docs Advanced Type Conversion.