GRAILS は初めてですが、単純なアプリを作成し、Tomcat にデプロイしようとしています。
次を使用してアプリを実行すると:
grails prod run-app
すべて正常に動作します。ただし、warファイルにビルドすると
grails prod war
次に、war パッケージを tomcat サーバーにアップロードするか、直接実行します。
java -Dgrails.env=prod -jar build\lib\app.war
次に、最初はすべて問題ないように見えるこの奇妙な動作が発生しますが、インデックス以外のアクションのリンクをクリックするたびに、404 エラーが発生します。例えば
webapp:8080/employee WORKS
webapp:8080/employee/index WORKS
webapp:8080/employee/show/1 404 error
webapp:8080/department WORKS
webapp:8080/department/show/1 404 error
等
上記の例では、webapp:8080/employee/show/1 がリストされ、インデックス内のテーブルからリンクされているため、確実に見つかるはずです。
環境をテストまたは開発に移動しても、Tomcatで実行するか直接実行するかに関係なく、実行中のwarファイルからのフィードバックが見つからないように見えるため、その根底にたどり着くのに非常に苦労しています。ログファイルや標準出力には何もありません。
ここに私のUrlMappingsがあります
package generico
class UrlMappings {
static mappings = {
"/$controller/$action?/$id?(.$format)?"{
constraints {
// apply constraints here
}
}
// "/"(view:"/index")
"/"(controller:"employee", action:"index")
"500"(view:'/error')
"404"(view:'/notFound')
}
}
繰り返しますが、どの環境でも「grails run-app」を実行すると、すべてが正常に機能します。
助けていただければ幸いです。ありがとう。