Grails — сопоставление /file.xml с контроллером и действием

Как сопоставить uri с суффиксом с контроллером + действием на Grails?

Я пытался:

name sitemap: "/data.xml" {
    controller = 'data'
    action = 'generate'
}

Но это просто не работает. Пока это:

name sitemap: "/data" {
    controller = 'data'
    action = 'generate'
}

нормально работает...

Есть идеи?


person Bruno Krebs    schedule 18.08.2014    source источник
comment
С какой версией Grails у вас возникла проблема?   -  person Jeff Scott Brown    schedule 19.08.2014
comment
Я использую версию 2.2.3   -  person Bruno Krebs    schedule 22.08.2014


Ответы (1)


То, что вы там показали, действительно. См. приложение по адресу https://github.com/jeffbrown/urlfilemappingdemo. Он содержит следующее:

// grails-app/conf/UrlMappings.groovy
class UrlMappings {

    static mappings = {

        name sitemap: "/data.xml" {
            controller = 'data'
            action = 'generate'
        }

        "/"(view:"/index")
        "500"(view:'/error')
    }
}

Индексная страница по умолчанию содержит ссылку, которая подтверждает, что это сопоставление работает.

person Jeff Scott Brown    schedule 19.08.2014
comment
Вы не уточнили, что происходит в вашем приложении, кроме утверждения. Но это просто не работает. Одна вещь, которую нужно искать, - это конфликтующее сопоставление. - person Jeff Scott Brown; 19.08.2014
comment
404 бывает. Никаких исключений или чего-то подобного. Я проверил на конфликты, но их нет... Буду разбираться дальше. Спасибо! - person Bruno Krebs; 19.08.2014