Generating dynamic elements in struts !!

Thanks to http://www.techtamasha.com/generate-dynamic-ids-for-struts-html-tags/

Do you use struts tags to generate html content?
If yes, then sooner or later you’ll come across a scenario where you would generate html elements in an array
I faced a similar predicament recently. I had no other option but to use scriptlets to generate id’s for the html elements

However, I soon found out using scriptlets within the struts html tags isn’t really straight forward.

Here’s the code I tried in my first attempt:


//iteration logic here
<html:text property="example[]" styleid="example"/>

Well, if you write the code as shown above, the html code generated would be :

<input type="text" name="example[]" id = "example">

and not


To get the expected result, i.e. for the scriptlet to work inside the struts html tag, write as below:

<html:text property=''
styleid=''/>

Please note that the name of the elements should be like this if you want them to read in Action Class via Action Form.
example[0], example[1], example[2], example[3]……and so on…

What do one needs to retrieve these values in Action Class

  1. Create a property in Action Form with the name example of type String[]. (Though ArrayList may also work, but I have not tried it yet)
  2. Create the corresponding getter setters for the property defined above.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.