我有一个grails 2.3.8 app。
它有一个视图:views / rte / subscriptions.gsp
我有一个控制器:controllers / RTEController.groovy
RTEController包含一个动作:
def subscriptions() {
}
UrlMappings.groovy包含:
"/rte" (controller: "rte") {
action = [GET: "subscriptions"]
}
当我浏览到:
http://localhost:8080/MYAPP/rte
我收到404错误。
为什么网址映射不起作用?
答案 0 :(得分:3)
由于CamelCase格式未用于控制器名称。映射必须与控制器的确切名称匹配。修改网址映射如下:
"/rte" (controller: "RTE") { //controller name all CAPS
action = [GET: "subscriptions"]
}
另请注意,这也适用于依赖注入期间。例如,如果有一个名为RTEService
的服务,那么它只能作为
def RTEService //instead of def rteService or def rTEService