通常、Spring は、パスが一致しなかった要求マッピングに対して 404 応答を返し、パスが一致したが「Accept」ヘッダーが一致しなかった場合は 406 を返します。
Accept
ed 形式でフォルトを返すことによって残りのフォルトを処理する「キャッチオール」として機能するデフォルトのコントローラがあります。コントローラーの形式は次のとおりです。
@Controller
public class DefaultController {
@RequestMapping("/**")
public void unmappedRequest(HtpServletRequest req) {
throw new ResourceNotFoundException();
}
}
問題は、ここで一致した場合、他の場所で一致したかどうかわからないことです。Accept
クライアントに正しいエラーを返し、再試行できるタイプを伝えたいと思います。現在、私ができることは、一般的なResourceNotFound
例外をスローすることだけです。
これは私ができることですか、@Controller
それとも何らかのフィルタ チェーンを作成する必要があるのでしょうか?