Your list becomes the String "[originator.vo.BeforeSavingReq4OriginatorVO@15fc793, originator.vo.BeforeSavingReq4OriginatorVO@127bd04, originator.vo.BeforeSavingReq4OriginatorVO@83969e]" because your BeforeSaveingReq4Originator does not have a toString method, but that is not really the issue.
The issue is one of type conversion. It does not seem like the list is editable on your view page, but perhaps you can't recreate it when on the GET/POST you are working with and need it passed through the page. Sooo.... the first thing you need is a converter for creating BeforeSavingReq4OriginatorVO objects to and from Strings.
If these things are not stored anywhere then you will need to build a String that you can later parse. Most of the time its some persisted entity and you can output the id as the String representation and then tell Struts to use the ID to load it from the database when it wants the objet representation. See Struts type conversion for how to do this.
So you get a type converter working for your Class. Now the collection. I am not sure it will work to just have a single field with the name of the collection and try to then reconstruct it from the toString output of the Collection. Maybe once there is a type converter and your String looks like [1,4,5,6] it sees the setter is a collection and then tries to create VO objects from each "String representation".
If not then I know you can iterate over your collection and create hidden fields for each value.
<s:iterator value="listOfValues" status="row">
<s:hidden name="listOfVoObjects[${row.index}]" value="<s:property/>"
</s:iterator>
Now you Struts will know how to create your collection assuming there is a type converter. If there is no type converter then you have to create the entire structure of the object in the HTML form:
<s:iterator value="listOfValues" status="row">
<s:hidden name="listOfVoObjects[${row.index}].itemId" value="<s:property value="itemId"/>"
<s:hidden name="listOfVoObjects[${row.index}].itemName" value="<s:property value="itemName"/>"
enter code here
</s:iterator>
There are still some type conversion implications depending on your version of Java. If you can use Generics and your target setter is List setListOfVoObjects(...) then Struts can figure out what kind of bean to create for each entry. If not, then there is type conversion settings for Collections and maps described in the Struts documentation.
In a file called [actionName]-conversion.properties you specify the bean type with something like:
Element_listOfVoObjects=originator.vo.BeforeSavingReq4OriginatorVO
but check the struts documentation.