tomcat - Grails 部署到 tomcat,只有一些链接有效

标签 tomcat grails deployment tomcat6

我已将我的应用程序部署到运行 tomcat6 的 ubuntu 服务器。我通过 WAR 文件进行了部署,并将其重命名为 ROOT。当我转到基本 url 时,出现 404 错误,提示找不到“index.jsp”。我在 grails FAQ 网站上发现,这意味着它已经尝试查找 gsp 但无法找到它——但是,我已经在提取的 war 中验证它确实存在。

我的默认设置指向调用 index() 的 HomeController,并且在 View 中一个相应的 /home/index.gsp解压后的 WAR 文件夹下。

现在要增加一些困惑,我有另一个 Controller ContactController 和相同的 View 设置(即 Contact/index.gsp),那个 可以工作!事实上,在我拥有的 5 个 Controller 中,它是唯一一个可以明显找到 View 的 Controller ,即使每个 View 在各自的 View 文件夹中都被命名为 index.gsp

我不确定它是否与应用程序本身有关,因为它使用 run-app 运行(尽管我当然不会排除这种可能性)。我的猜测是它与服务器相关,但所有文档都说将 WAR 简单地放入 /webapps/ 目录并重新启动。

有什么建议吗?

更新:UrlMappings.groovy:

class UrlMappings {

    static mappings = {
        "/$controller/$action?/$id?"{
            constraints {
                // apply constraints here
            }
        }

        "/"(controller:"home", action:"index")
        "500" (view: '/error')
    }
}

错误正是:

The requested resource (/WEB-INF/grails-app/views/home/index.jsp) is not available

最佳答案

我们最近遇到了这个问题。确保您的 Controller 位于与目录结构相对应的正确包中。

例如:

package com.mypackage

class HomeController {
   def index = {
   }
}

./grails-app/controllers/com/mypackage 中。

关于tomcat - Grails 部署到 tomcat,只有一些链接有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11461490/

相关文章:

grails - 如何使用 Webpack 和 VueJS 创建 Grails 应用程序?

ios - 您如何计算您的 iOS 应用程序安装基数?

linux - tomcat7 localhost :8080 is not working?时怎么办

eclipse - EC2 上的 Tomcat 7 远程调试

java - Web Sockets + Tomcat/Glassfish + 集群 + 负载平衡 - 有哪些选项?

grails - Grails如何遍历参数和设置值

tomcat - 你好,我部署了war文件,但是我无法启动它

javascript - 在 g :remoteLink as result of javascript function 中传递参数

maven - 如何将Gradle uploadArchive与其他ssh端口一起使用?

c# - 检查应用程序是否在安装后首次运行