【发布时间】:2012-07-12 22:11:50
【问题描述】:
我已将我的应用程序部署到运行 tomcat6 的 ubuntu 服务器上。我通过 WAR 文件进行了部署,并将其重命名为 ROOT。当我转到基本 url 时,我收到一个 404 错误,提示找不到“index.jsp”。我在 grails 常见问题解答网站上发现,这意味着它已经尝试找到 gsp 但无法找到它——但是,我已经在提取的战争中验证了它确实存在,确实存在。
我的默认设置指向调用 index() 的 HomeController,并且在提取的 WAR 下的视图文件夹中存在一个对应的 /home/index.gsp。
现在为了增加一些混乱,我有另一个控制器 ContactController 和相同的视图设置(即 Contact/index.gsp),那个可以工作!事实上,在我拥有的 5 个控制器中,它是唯一一个显然可以找到视图的控制器,即使每个视图在各自的视图文件夹中都被命名为 index.gsp。
我不确定它是否与应用程序本身有关,因为它使用运行应用程序工作(尽管我当然不会排除它)。我的猜测是它与服务器相关,但所有文档都说将 WAR 简单地放在 /webapps/ 目录中并重新启动。
有什么建议吗?
更新:UrlMappings.groovy:
class UrlMappings {
static mappings = {
"/$controller/$action?/$id?"{
constraints {
// apply constraints here
}
}
"/"(controller:"home", action:"index")
"500" (view: '/error')
}
}
确切的错误:
请求的资源(/WEB-INF/grails-app/views/home/index.jsp)是 不可用
【问题讨论】:
-
你能发布你的 UrlMappings.groovy 文件吗?
-
我已将其添加到问题中。我的控制器被命名为“HomeController”而不是“homeController”。这有关系吗?
-
这一切对我来说都是正确的。小写是指控制器时应该使用的。可以直接去
/appName/home/index吗?接下来,您可以从home控制器添加您的index操作吗? -
@Kelly 我也采取了行动。我收到错误消息:“请求的资源 (/WEB-INF/grails-app/views/home/index.jsp) 不可用。”还是
-
我在问题中看不到
index控制器操作。您在单个index.gsp文件中执行的操作会导致它们无法编译吗?
标签: tomcat grails deployment tomcat6