From 66f530355417e809b20cd452b449363fe6b0c060 Mon Sep 17 00:00:00 2001 From: jcgueriaud Date: Wed, 22 Nov 2017 12:58:08 +0100 Subject: [PATCH] Update datamodel-forms.asciidoc (#10350) This patch fixes the BinderValidationStatusHandler example in the documentation. --- .../datamodel/datamodel-forms.asciidoc | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/documentation/datamodel/datamodel-forms.asciidoc b/documentation/datamodel/datamodel-forms.asciidoc index 2987e9ac1d..f307144a57 100644 --- a/documentation/datamodel/datamodel-forms.asciidoc +++ b/documentation/datamodel/datamodel-forms.asciidoc @@ -506,27 +506,26 @@ We can also define our own status handler to provide a custom way of handling st // in order to display generated error messages separated by a
tag formStatusLabel.setContentMode(ContentMode.HTML); -BinderValidationStatusHandler defaultHandler = binder.getValidationStatusHandler(); +BinderValidationStatusHandler defaultHandler = binder.getValidationStatusHandler(); binder.setValidationStatusHandler(status -> { // create an error message on failed bean level validations - List> errors = status.getBeanValidationErrors(); + List errors = status.getBeanValidationErrors(); // collect all bean level error messages into a single string, // separating each message with a
tag - String errorMessage = errors.stream().map(Result::getMessage) - .map(o -> o.get()) - // sanitize the individual error strings to avoid code injection - // since we are displaying the resulting string as HTML - .map(errorString -> Jsoup.clean(errorString, Whitelist.simpleText())) - .collect(Collectors.joining("
")); + String errorMessage = errors.stream().map(ValidationResult::getErrorMessage) + // sanitize the individual error strings to avoid code injection + // since we are displaying the resulting string as HTML + .map(errorString -> Jsoup.clean(errorString, Whitelist.simpleText())) + .collect(Collectors.joining("
")); // finally, display all bean level validation errors in a single label formStatusLabel.setValue(errorMessage); formStatusLabel.setVisible(!errorMessage.isEmpty()); // Let the default handler show messages for each field - defaultHandler.accept(status); + defaultHandler.statusChange(status); }); ---- -- 2.39.5