you need to send along both the values from the form as well as enough information about what was invalid to create messaging for the user.
You could shove it all in cookies, or encode it into the query string or a mix of both.
Either way, it's a huge pain. And, you have to really think through the security implications of doing this.
So I can see why this isn't done, but it seems really nice to be in a world where you can always refresh the page you are on. [2/2]