@Override public String getViolationMessage(final Locale locale, final Object actualValue) { final MessageInterpolator mi = FACTORY.getMessageInterpolator(); final ConstraintDescriptor<A> desc = new PropertyConstraintDescriptor<A>(constraintAnnotation); final Context messageContext = new MessageInterpolatorContext(desc, actualValue); final String messageTemplate = extractMessageTemplate(); final String message = mi.interpolate(messageTemplate, messageContext, locale); return message; }
private String interpolate(String messageTemplate, Object validatedValue, ConstraintDescriptor<?> descriptor, Map<String, Object> messageParameters, Map<String, Object> expressionVariables) { MessageInterpolatorContext context = new MessageInterpolatorContext( descriptor, validatedValue, getRootBeanClass(), messageParameters, expressionVariables ); try { return messageInterpolator.interpolate( messageTemplate, context ); } catch (ValidationException ve) { throw ve; } catch (Exception e) { throw log.getExceptionOccurredDuringMessageInterpolationException( e ); } }
private String interpolate(String messageTemplate, Object validatedValue, ConstraintDescriptor<?> descriptor, Map<String, Object> messageParameters, Map<String, Object> expressionVariables) { MessageInterpolatorContext context = new MessageInterpolatorContext( descriptor, validatedValue, getRootBeanClass(), messageParameters, expressionVariables ); try { return validatorScopedContext.getMessageInterpolator().interpolate( messageTemplate, context ); } catch (ValidationException ve) { throw ve; } catch (Exception e) { throw LOG.getExceptionOccurredDuringMessageInterpolationException( e ); } }