0

Tomcat6 を実行している ubuntu サーバーにアプリケーションをデプロイしました。WAR ファイルを介して展開を行い、名前を ROOT に変更しました。ベース URL に移動すると、「index.jsp」が見つからないという 404 エラーが表示されます。grails FAQ サイトで、これは既に gsp を見つけようとしたが、見つけられなかったことを意味することを発見しました。ただし、抽出された war で、実際に存在することを確認しました。

私のデフォルト設定は、呼び出す HomeController を指しており、抽出された WAR の下のビュー フォルダーに対応するものindex()あります。/home/index.gsp

さらに混乱を招くと、別のコントローラーContactControllerと同じビュー設定 (つまり、Contact/index.gsp) があり、それが機能します。index.gsp実際、私が持っている 5 つのコントローラーのうち、各ビューにはそれぞれのビュー フォルダーで名前が付けられていても、明らかにビューを見つけることができるのはコントローラーだけです。

run-app を使用して動作するため、アプリ自体に関連しているかどうかはわかりません (ただし、除外するつもりはありません)。サーバーに関連していると思いますが、すべてのドキュメントには、ディレクトリに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) は利用できません

4

3 に答える 3

4

最近、この問題が発生しました。コントローラーがディレクトリ構造に対応する適切なパッケージに含まれていることを確認してください。

例えば:

package com.mypackage

class HomeController {
   def index = {
   }
}

./grails-app/controllers/com/mypackageにあります。

于 2012-10-18T17:50:07.020 に答える
1

ルートマッピングでアクションとコントローラーに名前を付けると機能しますか?

"/"(controller:"home", action:"index")
于 2012-07-13T00:04:40.257 に答える
0

context.xml ファイルの Context タグに「 allowLinking="true" 」属性を追加する必要があります。

${TOMCAT_HOME}\conf フォルダーに context.xml ファイルが表示されます。

于 2015-09-09T09:45:36.203 に答える