例外をテストし、特定の HTTP ステータス コードをクライアントに返す単純な Grails アプリ (1.3.7) があります。
"500" (view: '/error')
デフォルトを無効にしURLMappings
て、Grails が標準error
ビューを使用して応答をレンダリングしないようにしました。
例外をキャッチした後、リダイレクトするコントローラーに単純なクロージャーがあり、応答をレンダリングします...
def remoteError = {
response.status = 500
render ([__error: "A remote error occurred"] as JSON)
}
WebLogic 10.3 の 1 つのインスタンスで、テスト例外がスローされると、応答は次のようになります...
{
__error: "A remote error occurred"
}
..まさに私が期待したものです。
しかし、まったく同じ WAR ファイルを別の WebLogic 10.3 インスタンスにデプロイすると、以下に示す標準の Grails エラー ページが生成されます。WAR ファイルは変更されていないため、WebLogic のどの設定が他のインスタンスとは異なる動作を引き起こしているのかを突き止めようとしています。