私はこの問題を開発の早い段階で経験していませんでしたが、別の問題をデバッグするときにこれが起きていることに気がつきました。これは、すべてのRESTエンドポイントで発生したが、以下の例である:@RequestBodyはPOJO型とBindingResultに制限されていませんhasErrors always false
今@RestController
@RequestMapping("/editlisting")
public class EditParkingSpaceListingController {
@Autowired
ParkingSpaceRepository parkingSpaceRepository;
@Autowired
ParkingSpaceListingRepository parkingSpaceListingRepository;
@RequestMapping(method = RequestMethod.PUT)
public ResponseEntity<String> editParking(@RequestBody ParkingSpaceListingClient pslc, BindingResult result) {
if (result.hasErrors()) {
return new ResponseEntity<String>("", HttpStatus.BAD_REQUEST);
}
// Code to save pslc data to database.
私は
{ }
として身体にHTTPリクエストを送信した場合、私は200応答を取得し、私はMongoDBのを確認したときに、コレクションに新しい空のドキュメントがあります。大括弧のない空のボディを送信した場合、予想通り400を返します。POJOに存在しないランダムなガベージデータを持つボディを送信すると、BindingResultはエラーを受け取りません。作成した。
スプリングブート1.4.1で予想通り400を返します。あなたのプロジェクトでは、正確なスプリングブートバージョンは何ですか? –