I've got this method on my controller, which basically validates and saves entity or renders errors if any:

def initCreateProduct() {
    render view: "/admin/product/createProduct"

def createProduct(params) {
    def product = new Product(params)
    if (product.validate()) {
        flash.message = "product.createSuccess"
        product.save(failOnError: true);
        redirect action: "initCreateProduct"
    } else {
        render view: "/admin/product/createProduct", model: [product: product]
My url mapping is:

"/admin/product/$action?"(controller: "product")
It works fine in case if validation is successfull (URL in browser is "product/initCreateProduct", which is ok), but in case if validation fails my URL changes to "product/index", which is wrong. What I need is to get the same URL in both cases (it's the same page after all). Thanks in advance.