1
私はサービスとWebのプロジェクトが異なります。私は、特定の例外がサービスから来るときをどのように処理するかを知りたいと思います。Rest APIの例外処理
UI側でpublic void serviceFunction()
{
try
{
//code
}catch(DuplicateDataException e)
{
return Response.status(Response.Status.INTERNAL_SERVER_ERROR)
.entity(e.getMessage()).build();
}}
:コントローラクラスは、私は内部サーバーエラーを取得していますREST APIのUI側で
@RequestMapping(value = "/addNew", method = RequestMethod.POST)
public ModelAndView addNew(Object obj) {
try {
restTemplate.exchange(url, HttpMethod.POST, httpEntity,
Object.class);
LOGGER.info("Object Created Successfully");
} catch (Exception e) {
return ModelAndView("PageName", "param","value");
}
}
を通じてサービス機能を呼び出している、サービス側で、例えば以下のように私はDuplicateDataExceptionを処理しています代わりに、サービス側で設定されたエンティティエラーメッセージ値を取得したいと思います。
:次に、あなたのコントローラのすべてのグローバルexceptionHandlerのを定義するなど、独自のエラーページを返すことができますか? – Makoto
私はBAD_REQUESTでも試しましたが、戻り値はModelAndView( "PageName"、 "param"、 "value")の同じキャッチブロックになります。私は、サービス側の返信応答のエンティティに設定されたメッセージとして「価値」が必要です。 – anju888
可能な複製:https://stackoverflow.com/q/35323174/1079354 – Makoto