Spring MVC аннотированный контроллер в groovy

У меня есть это в src/main/groovy/...

package com.mycompany.web;
// imports....

@Controller
class GroovyController {

    @RequestMapping("/status_groovy")
    public @ResponseBody String getStatus() {
        return "Hello World from groovy!";
    }
}

Использую maven 3 и spring 3.1 (Milestone). Spring MVC отлично работает для java контроллеров и все настроено хорошо. Класс groovy компилируется нормально и может быть найден в каталоге classes вместе с классами java-контроллеров.

У меня есть похожий контроллер, написанный на java (JavaController) в том же пакете, но в src/main/java, и он правильно подхватывается spring и mapped, и я могу видеть ответ на экране, когда я нажимаю на url.

package com.mycompany.web;
// imports....

@Controller
class JavaController {

    @RequestMapping("/status")
    public @ResponseBody String getStatus() {
        return "Hello World!";
    }
}

Jetty запускается нормально без ошибок в журнале, но я не вижу, чтобы groovy url был отображен, в то время как я вижу java url.

2011-09-23 16:05:50,412 [main] INFO  org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping - Mapped "{[/status],methods=[],params=[],headers=[],consumes=[],produces=[]}" onto public java.lang.String com.mycompany.web.JavaController.getStatus()

Все настройки в порядке, так как другие части приложения работают отлично с аннотациями (component-scan и т.д.), просто я не могу получить отображение url в GroovyController

Может ли кто-нибудь объяснить, что нужно сделать, чтобы Controllerы, написанные на groovy, работали?

PS: Я избегаю GroovyServlet для запуска скриптов, потому что он имеет большие недостатки, когда дело доходит до инъекции бобов и отображения путей url.

5
задан kdabir 23 September 2011 в 20:51
поделиться