The assumption is that you're using this button only for its onclick event, and the value attribute is not submitted to the server. (Note that <html:button/> gets translated to <input type="button">). Passing the value as a parameter as you're doing is about as good a way of handing it as any. [ November 07, 2007: Message edited by: Merrill Higginson ]
You could also define a property on your form, define a hidden field on your jsp and then set the value of the hidden field in your onclick handler. That way you would not have to pass the value on the URL and in your action you can read the value directly from the form class.