2016-10-30 1 views
0

私はGRAILSを使い慣れていますが、単純なアプリケーションを構築しています。Grails 3用のスタンドアロンWARのインデックス以外のアクションでURLマッピングが壊れてしまいました。

私が使用してアプリケーションを実行する場合:

grails prod run-app 

すべてが正常に動作します。私はその後、warファイル

grails prod war 

にそれを構築する場合は、どちらかのTomcatサーバーに戦争パッケージをアップロードするか、私はすべてがで罰金だこの奇妙な振る舞いを取得

、その後
java -Dgrails.env=prod -jar build\lib\app.war 

のように直接それを実行まず、インデックス以外のアクションのリンクをクリックするたびに404エラーが表示されます。 など。上記の例のWebアプリケーションで

 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 

:それはインデックス内のテーブルからリストされ、リンクされているので、8080 /従業員/ショー/ 1は間違い見出さなければなりません。

私は、テストや開発に環境を移動したとしても、実行中のwarファイルから直接またはそれを直接実行するかどうかにかかわらず、私は傾けることができないため、ログファイルやstdoutには何もありません。ここで

は私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の実行アプリ」をしなければ、どのような環境のために、すべてのものは絶対に正常に動作します。

何か助けていただきありがとうございます。ありがとう。

答えて

0

問題はGrails 3.2.1でした。 Grails 3.2.2に更新した後、グラデーションをきれいにしてから、再パッケージ化しても問題ありません。

0

Grails 3.2.2と同じ問題があります。

"/"を読み込むことができません。私のマッピングはすべてがしかし、ときに私は戦争でアプリケーションを実行し、それは私にエラーページを与える実行Grailsのであらゆる環境で正しく動作

com.example.corp.IndexController { 
    static namespace = 'corp' 
    def index() {) 
} 

"/"(namespace: 'corp', controller: 'index', action: 'index') 

のように見えるので、私は名前空間を使用しています。

関連する問題