-
Bug
-
Resolution: Fixed
-
Neutral
-
5.4.4
-
-
Empty show more show less
-
Basel 39
-
5
Description
When validation of a field placed inside a composite field fails notifications are not working correctly.
Use-case 1 - field with validator configured under composite field:
- when validation fails dialog is not saved and displays the generic error on top but user is not notified at concrete field with the specific error message.
Use-case 2 - required field without validator configured under composite field:
- correct message is displayed ("This field is required.") but is tied to the composite field, not the concrete inner field.
Use-case 3 - required field with validator configured under composite field:
- if the field was blank before and validation failed, error message for required field missing ("This field is required.") is displayed. Same as in use-case 2 it's tied to whole composite field.
- if the field was not blank the same behavior as in use-case 1 will occur.
Correct behavior - error messages should be displayed under concrete fields and not be covered by required files missing message.
Use-case 4 - making changes on the select field (which is part of composite field) caused the below exception
See more in video: https://jira.magnolia-cms.com/secure/attachment/32694/SelectFieldValidation.webm
2016-03-17 10:59:08,524 ERROR .magnolia.ui.admincentral.AdmincentralErrorHandler: AdmincentralUI has encountered an unhandled exception. com.vaadin.data.Validator$InvalidValueException: Country is required at com.vaadin.data.validator.AbstractValidator.validate(AbstractValidator.java:103) at com.vaadin.ui.AbstractField.validate(AbstractField.java:969) at com.vaadin.ui.AbstractField.setValue(AbstractField.java:499) at com.vaadin.ui.AbstractSelect.setValue(AbstractSelect.java:709) at com.vaadin.ui.ComboBox.changeVariables(ComboBox.java:674) at com.vaadin.server.communication.ServerRpcHandler.changeVariables(ServerRpcHandler.java:486) at com.vaadin.server.communication.ServerRpcHandler.handleInvocations(ServerRpcHandler.java:305) at com.vaadin.server.communication.ServerRpcHandler.handleRpc(ServerRpcHandler.java:184) at com.vaadin.server.communication.UidlRequestHandler.synchronizedHandleRequest(UidlRequestHandler.java:92) at com.vaadin.server.SynchronizedRequestHandler.handleRequest(SynchronizedRequestHandler.java:41) at com.vaadin.server.VaadinService.handleRequest(VaadinService.java:1408) at com.vaadin.server.VaadinServlet.service(VaadinServlet.java:350) at info.magnolia.ui.admincentral.AdmincentralVaadinServlet.service(AdmincentralVaadinServlet.java:131) at javax.servlet.http.HttpServlet.service(HttpServlet.java:731) at info.magnolia.cms.filters.ServletDispatchingFilter.doFilter(ServletDispatchingFilter.java:148) at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
Included file contains simple composite field configuration.
- is related to
-
MGNLUI-3844 MultiValueField's validation is not concrete
- Closed
- mentioned in
-
Page Loading...