When you press the refresh button it will refresh the current request. Your current page is a response from a 'post' of the previous page.
If you want the customer to be able to refresh the screen you must use
redirect=true in you forward mapping in Struts. The response is then a result of a separate get operation. It also means that the form will have to be in session scope and not request scope.
If you want to prevent the customer from refreshing and thus re-submitting
you should put a property in your form that indicates the state so the your validate can produce an error.
You must remember that if the form is submitted the Struts controller will assign the request parameters to your form and then call validate, it may overwrite something you want preserved.