You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by "Jochen Kemnade (JIRA)" <ji...@apache.org> on 2014/05/17 17:37:14 UTC
[jira] [Commented] (TAP5-2258) AbstractValidator does not work with
Date type
[ https://issues.apache.org/jira/browse/TAP5-2258?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14000806#comment-14000806 ]
Jochen Kemnade commented on TAP5-2258:
--------------------------------------
I just tried to reproduce the issue with 5.4-beta-6. I get a "ConstraintValue test" in the logs if I submit the form with a valid date. Can you please check if this is still an issue for you?
> AbstractValidator does not work with Date type
> ----------------------------------------------
>
> Key: TAP5-2258
> URL: https://issues.apache.org/jira/browse/TAP5-2258
> Project: Tapestry 5
> Issue Type: Bug
> Components: tapestry-core
> Affects Versions: 5.4
> Reporter: George Christman
>
> While trying to create a minimum date I noticed the AbstractValidator does not call the validate method when the datatype Date is used. See discussion on mailing list
> http://apache-tapestry-mailing-list-archives.1045711.n5.nabble.com/Custom-Validator-for-Date-field-not-working-td5725189.html
> Sample test code
> AppModule.class
> @SuppressWarnings("rawtypes")
> public static void
> contributeFieldValidatorSource(MappedConfiguration<String, Validator>
> configuration, JavaScriptSupport js) {
> configuration.add("minDate", new MinDate(js));
> }
> Validator MinDate.class
> public class MinDate extends AbstractValidator<String, Date> {
> public MinDate(JavaScriptSupport javaScriptSupport) {
> super(String.class, Date.class, "min-date", javaScriptSupport);
> System.out.println("min-date");
> }
> @Override
> public void validate(Field field, String constraintValue,
> MessageFormatter formatter, Date value)
> throws ValidationException
> {
> System.out.println("ConstraintValue " + constraintValue);
> //throw new ValidationException(buildMessage(formatter, field,
> constraintValue));
> }
> private String buildMessage(MessageFormatter formatter, Field field,
> String constraintValue) {
> return formatter.format(constraintValue, field.getLabel());
> }
> @Override
> public void render(Field field, String c, MessageFormatter mf,
> MarkupWriter writer, FormSupport fs) {
> // throw new UnsupportedOperationException("Not supported yet.");
> //To change body of generated methods, choose Tools | Templates.
> }
> }
> tml
> <t:DateField t:id="vacationAnniversary" t:format="MM/dd/yyyy"
> value="timeSheetEntity.vacationAnniversary"/>
> TimeSheetEntity.class
> @NonVisual
> @Validate("minDate=test")
> @Temporal(TemporalType.DATE)
> private Date vacationAnniversary;
--
This message was sent by Atlassian JIRA
(v6.2#6252)