What you're missing is an indexed getter for jobApplicationComments. When you use an indexed property in your JSP such as jobApplicationComments.comments , Struts must be able to get a single JobApplicationComment for a given index.
This becomes problematic for you, because you are storing these objects in a HashSet.
This class implements the Set interface, backed by a hash table (actually a HashMap instance). It makes no guarantees as to the iteration order of the set; in particular, it does not guarantee that the order will remain constant over time.
Since a HashSet does not have any concept of ordering and objects are not retrieved in any order, I can't think of a way to create an indexed getter for this object.
You may want to consider changing this collection to an implementation of the java.util.List interface, since implementors of this interface have a get(int index) method.