Solved! The problem was form parameters. The map key in our case contains '-', which is disallowed due to security reasons.
The issue got resolved once we change 'params' interceptor to allow '-' in parameter names by adding following code in struts.xml
<interceptor-ref name="params">
<param name="acceptParamNames">\w+((\.\w+)|(\[\d+\])|(\['\w+(\-\w+)*'\]))*</param>
</interceptor-ref>