Skip to content

Commit 80a085b

Browse files
committed
add validation constraints handling.
1 parent ac57788 commit 80a085b

File tree

1 file changed

+7
-1
lines changed

1 file changed

+7
-1
lines changed

src/main/java/com/hantsylabs/restexample/springmvc/api/post/PostController.java

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,15 @@
22

33
import com.hantsylabs.restexample.springmvc.Constants;
44
import com.hantsylabs.restexample.springmvc.domain.Post;
5+
import com.hantsylabs.restexample.springmvc.exception.InvalidRequestException;
56
import com.hantsylabs.restexample.springmvc.model.CommentDetails;
67
import com.hantsylabs.restexample.springmvc.model.CommentForm;
78
import com.hantsylabs.restexample.springmvc.model.PostDetails;
89
import com.hantsylabs.restexample.springmvc.model.PostForm;
910
import com.hantsylabs.restexample.springmvc.model.ResponseMessage;
1011
import com.hantsylabs.restexample.springmvc.service.BlogService;
1112
import javax.inject.Inject;
13+
import javax.validation.Valid;
1214
import org.slf4j.Logger;
1315
import org.slf4j.LoggerFactory;
1416
import org.springframework.data.domain.Page;
@@ -18,6 +20,7 @@
1820
import org.springframework.http.HttpHeaders;
1921
import org.springframework.http.HttpStatus;
2022
import org.springframework.http.ResponseEntity;
23+
import org.springframework.validation.BindingResult;
2124
import org.springframework.web.bind.annotation.PathVariable;
2225
import org.springframework.web.bind.annotation.RequestBody;
2326
import org.springframework.web.bind.annotation.RequestMapping;
@@ -87,9 +90,12 @@ public ResponseEntity<Page<CommentDetails>> getCommentsOfPost(
8790

8891
@RequestMapping(value = "", method = RequestMethod.POST)
8992
@ResponseBody
90-
public ResponseEntity<ResponseMessage> createPost(@RequestBody PostForm post) {
93+
public ResponseEntity<ResponseMessage> createPost(@RequestBody @Valid PostForm post, BindingResult errResult) {
9194

9295
log.debug("create a new post");
96+
if (errResult.hasErrors()) {
97+
throw new InvalidRequestException(errResult);
98+
}
9399

94100
PostDetails saved = blogService.savePost(post);
95101

0 commit comments

Comments
 (0)