@ExtDirectMethod(value = ExtDirectMethodType.FORM_POST_JSON) public ExtDirectFormPostResult handleFormSubmitNoMultipartFile( @RequestParam(value = "p1", required = true) Long param1, @RequestParam(value = "p2", required = true) String param2, @Valid FormBean bean) throws Exception { DataBinder binder = new DataBinder(bean); binder.setValidator(this.validator); validator.validate(bean, binder.getBindingResult()); logger.debug("any [{}]", bean.any()); ExtDirectFormPostResult formPostResult = new ExtDirectFormPostResult(binder.getBindingResult()); String resultString = "Server received: \n" + bean.toString() + "\n"; if (bean.any().isEmpty()) { // throw new Exception("Error: @JsonAnySetter not filled"); resultString = "Error: @JsonAnySetter not filled"; formPostResult.setSuccess(false); } formPostResult.addResultProperty("response", resultString); return formPostResult; }
@ExtDirectMethod(value = ExtDirectMethodType.FORM_POST) @RequestMapping(value = "/handleFormMultipartSubmit", method = RequestMethod.GET) public ExtDirectFormPostResult handleFormMultipartSubmit( @RequestBody MultiValueMap<String, String> body, @Valid FormBean bean, MultipartFile screenshot) { logger.debug("body [{}]", body.toSingleValueMap()); Assert.notEmpty(bean.any(), "@JsonAnySetter not filled"); String resultString = "Server received: \n" + bean.toString() + "\n"; if (!screenshot.isEmpty()) { resultString += "ContentType: " + screenshot.getContentType() + "\n"; resultString += "Size: " + screenshot.getSize() + "\n"; resultString += "Name: " + screenshot.getOriginalFilename(); } ExtDirectFormPostResult result = new ExtDirectFormPostResult(); result.addResultProperty("response", resultString); return result; }