Topic: RESTful redirects

I'm using the restful_authentication plugin and here's the situation.  I have routes that are setup as such:

map.resources :users
map.signup '/signup', :controller => 'users', :action => 'new'

And the UsersController#create action:
def create
  @user = User.new(params[:user])
  @user.save!
  self.current_user = @user
  redirect_back_or_default('/')
  flash[:notice] = "Thanks for signing up!"
rescue ActiveRecord::RecordInvalid
  render :action => 'new'
end

However, when a user is signing up, if the model is invalid, the rescue block renders the 'new' action, which in turn transforms the URL into 'domain.com/users' (and displaying the error messages in the view).  How can I get the URL to stay 'domain.com/signup' instead of '/users'?

I tried setting up routes like this:

map.signup '/signup', :controller => 'users', :action => 'new', :conditions => {:method => :get}
map.signup '/signup', :controller => 'users', :action => 'create', :conditions => {:method => :post}

But to no avail.  I can always just redirect to the signup_path after catching the RecordInvalid exception, but that wouldn't show the error messages in the view (using standard error_messages_for stuff).  Any suggestions?