Example usage for org.apache.wicket.validation IValidationError IValidationError

List of usage examples for org.apache.wicket.validation IValidationError IValidationError

Introduction

In this page you can find the example usage for org.apache.wicket.validation IValidationError IValidationError.

Prototype

IValidationError

Source Link

Usage

From source file:com.premiumminds.wicket.crudifier.form.elements.CollectionControlGroupTest.java

License:Open Source License

@Test
public void testValidationError() {
    CollectionControlGroup<String> ccg = new CollectionControlGroup<String>("test", null);
    ccg.getFormComponent().error(new IValidationError() {
        private static final long serialVersionUID = 1L;

        @Override// w w  w.  ja v  a 2s  .  c o  m
        public Serializable getErrorMessage(IErrorMessageSource messageSource) {
            return "Test error";
        }
    });

    assertEquals(1, ccg.getFormComponent().getFeedbackMessages().size());
    assertEquals("Test error", ccg.getFormComponent().getFeedbackMessages().first().getMessage());
}

From source file:com.tieto.it2014.ui.validation.ExistingEmailValidator.java

@Override
public void validate(IValidatable<String> validatable) {

    email = validatable.getValue();/*from   www  .  j  av  a2  s  .  c  o m*/
    user = getUserByEmailQuery.result(email);

    if (user != null) {
        validatable.error(new IValidationError() {
            private static final long serialVersionUID = 1L;

            @Override
            public Serializable getErrorMessage(IErrorMessageSource messageSource) {
                return "Email is already in use!";
            }
        });
    }
}

From source file:com.tieto.it2014.ui.validation.ExistingImeiValidator.java

@Override
public void validate(IValidatable<String> validatable) {

    imei = validatable.getValue();//from  w  w  w  .ja va  2s  .c  o  m
    user = getUserByIdQuery.resultOrNull(imei);

    if (user != null) {
        validatable.error(new IValidationError() {
            private static final long serialVersionUID = 1L;

            @Override
            public Serializable getErrorMessage(IErrorMessageSource messageSource) {
                return "IMEI number is already in use!";
            }
        });
    }
}

From source file:com.tieto.it2014.ui.validation.IMEIPatternValidation.java

@Override
public void validate(IValidatable<String> validatable) {
    password = validatable.getValue();/*from  www. j  av  a 2 s  . c  o  m*/

    if (!pattern.matcher(password).matches()) {
        validatable.error(new IValidationError() {

            @Override
            public Serializable getErrorMessage(IErrorMessageSource messageSource) {
                return "IMEI number is only composed out of digits!";
            }

        });
    }
}

From source file:de.voolk.marbles.web.pages.content.RenamePage.java

License:Open Source License

@SuppressWarnings("serial")
public RenamePage(PageParameters parameters) {
    super(parameters);
    final TextField<String> pageName = new TextField<String>("pageName",
            new PropertyModel<String>(getMarblesPage(), "name"));
    pageName.add(new IValidator<String>() {
        @Override//from  w w w  . j a  va  2s .  com
        public void validate(IValidatable<String> validatable) {
            String name = validatable.getValue();
            if (!uniqueInLevel(name)) {
                validatable.error(new IValidationError() {
                    @Override
                    public String getErrorMessage(IErrorMessageSource arg0) {
                        return new StringResourceModel("pagename.not.unique", RenamePage.this,
                                new Model<ValueMap>()).getObject();
                    }
                });
            }
        }

    });
    pageName.setRequired(true);
    pageName.add(StringValidator.minimumLength(1));
    @SuppressWarnings({ "rawtypes" })
    Form form = new Form("renameForm") {
        @Override
        protected void onSubmit() {
            String name = pageName.getModelObject();
            int id = savePageName(name);
            PageParameters parameters = new PageParameters();
            parameters.put("id", id);
            setResponsePage(DisplayPage.class, parameters);
        }
    };
    form.add(pageName);
    form.add(new Button("save", new ResourceModel("save")));
    add(form);
    add(new FeedbackPanel("feedback"));
}

From source file:hsa.awp.admingui.edit.event.tabs.TabGeneral.java

License:Open Source License

/**
 * Constructor for tab.//  www  .j  a  v  a2s .  c o m
 *
 * @param id         wicket id
 * @param evt        event which is edited oder created.
 * @param eventPanel panel to update the details of the EventPanel.
 */
public TabGeneral(String id, Event evt, final EventPanel eventPanel) {

    super(id);

    this.event = evt;

    Form<Event> form = new Form<Event>("event.tabGeneral.form");
    add(form);

    feedbackPanel = new FeedbackPanel("event.tabGeneral.feedbackPanel");
    feedbackPanel.setOutputMarkupId(true);
    form.add(feedbackPanel);

    eventIdField = new TextField<Integer>("event.tabGeneral.eventId", new Model<Integer>(event.getEventId()),
            Integer.class);
    form.add(eventIdField);
    eventIdField.add(new IValidator<Integer>() {

        /**
         * unique serialization id.
         */
        private static final long serialVersionUID = 5605293764293745302L;

        @Override
        public void validate(IValidatable<Integer> validatable) {

            Integer val = validatable.getValue();

            if (val < 1) {
                validatable.error(new IValidationError() {

                    @Override
                    public String getErrorMessage(IErrorMessageSource messageSource) {

                        return "Veranstaltungsnummer muss grer 0 sein.";
                    }
                });
            } else if (val > 9999) {

                validatable.error(new IValidationError() {

                    @Override
                    public String getErrorMessage(IErrorMessageSource messageSource) {

                        return "Veranstaltungsnummer muss kleiner 10000 sein.";
                    }
                });
            }

        }

    });

    eventIdField.add(new MinimumValidator<Integer>(1));

    maxParticipantsField = new TextField<Integer>("event.tabGeneral.maxParticipants",
            new Model<Integer>(event.getMaxParticipants()), Integer.class);
    form.add(maxParticipantsField);
    maxParticipantsField.add(new MinimumValidator<Integer>(1));

    termChoice = new DropDownChoice<Term>("event.tabGeneral.term", new Model<Term>(event.getTerm()),
            controller.getTermsByMandator(getSession()), new ChoiceRenderer<Term>());
    form.add(termChoice);

    detailInfoField = new TextField<String>("event.tabGeneral.informationDetail",
            new Model<String>(event.getDetailInformation()));
    detailInfoField.setRequired(true);
    form.add(detailInfoField);

    String subjectName = "";
    if (event.getSubject() != null) {
        subjectName = event.getSubject().getName();
    }

    subjectField = new TextField<String>("event.tabGeneral.subject", new Model<String>(subjectName));
    form.add(subjectField);
    subjectField.add(new AutoCompleteBehavior<String>(new AbstractAutoCompleteRenderer<String>() {

        /**
         * generated UID.
         */
        private static final long serialVersionUID = 5609814253082290571L;

        @Override
        protected String getTextValue(String sub) {

            return sub;
        }

        @Override
        protected void renderChoice(String sub, Response response, String criteria) {

            response.write(getTextValue(sub));
        }
    }) {

        /**
         * generated serialization id.
         */
        private static final long serialVersionUID = 1220805798637698821L;

        @Override
        protected Iterator<String> getChoices(String input) {

            input = input.toLowerCase();
            List<String> names = new LinkedList<String>();
            for (Subject subject : controller.getSubjectsByMandator(getSession())) {
                if (subject.getName().toLowerCase().startsWith(input)) {
                    names.add(subject.getName());
                }
            }
            Collections.sort(names);

            return names.iterator();
        }
    });

    form.add(new AjaxButton("event.tabGeneral.submit") {

        /**
         * generated serialization id.
         */
        private static final long serialVersionUID = -6537464906539587006L;

        @Override
        protected void onError(final AjaxRequestTarget target, final Form<?> form) {

            target.addComponent(feedbackPanel);
        }

        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {

            int eventId = eventIdField.getModelObject();
            Subject subject = controller.getSubjectByNameAndMandator(subjectField.getModelObject(),
                    getSession());

            // TODO Sprache:
            // TODO basti refactoring
            if (subject == null) {
                feedbackPanel.error("Kein gltiges Fach angegeben");
            } else {
                boolean isNew = event.getId() == 0L;

                event.setEventId(eventId);
                event.setMaxParticipants(new Integer(maxParticipantsField.getModelObject()));
                event.setSubject(subject);
                event.setTerm(termChoice.getModelObject());
                event.setDetailInformation(
                        detailInfoField.getModelObject() == null ? "" : detailInfoField.getModelObject());

                event = controller.writeEvent(event);

                if (isNew) {
                    setResponsePage(new OnePanelPage(new EventPanel(OnePanelPage.getPanelIdOne(), event)));
                } else {
                    feedbackPanel.info("Eingaben bernommen");
                }
                eventPanel.updateEventDetails(target);
            }

            target.addComponent(form);
            target.addComponent(feedbackPanel);
        }

    });
}

From source file:hsa.awp.admingui.edit.SubjectPanel.java

License:Open Source License

/**
 * Constructor with {@link Panel}ID and {@link Subject}.
 *
 * @param id  the {@link Panel}ID//from w  w  w .  j  a  va 2s.  c  o m
 * @param sub the subject which has to be edited
 */
public SubjectPanel(String id, final Subject sub) {

    super(id);

    final Subject subject;
    if (sub == null) {
        subject = Subject.getInstance(controller.getActiveMandator(getSession()));
    } else {
        subject = sub;
    }

    final Form<Object> form = new Form<Object>("form");
    // form.setDefaultModel(new CompoundPropertyModel<Subject>(subject));

    name.setRequired(true);

    StringValidator stringValidator = new StringValidator() {
        /**
         * unique serialization id.
         */
        private static final long serialVersionUID = -8354513043330314939L;

        @Override
        protected void onValidate(IValidatable<String> validatable) {

            Subject found = controller.getSubjectByNameAndMandator(validatable.getValue(), getSession());

            if (found != null) {
                validatable.error(new IValidationError() {
                    @Override
                    public String getErrorMessage(IErrorMessageSource messageSource) {

                        return "Fachname existiert bereits";
                    }
                });
            }
        }
    };

    if (subject.getId() == 0) {
        name.add(stringValidator);
    }

    category.setRequired(true);
    category.add(categoryAutoCompleteBehavior);

    feedbackPanel.setOutputMarkupId(true);

    // add(new FeedbackPanel("feedback").setOutputMarkupId(true));
    // TODO Sprache:
    add(panelLabel.setDefaultModel(new Model<String>("Fach bearbeiten")));

    form.add(name.setDefaultModel(new Model<String>(subject.getName())));
    try {
        form.add(category.setDefaultModel(new Model<String>(subject.getCategory().getName())));
    } catch (NullPointerException e) {
        form.add(category.setDefaultModel(new Model<String>("")));
    }
    form.add(desc.setDefaultModel(new Model<String>(subject.getDescription())));
    form.add(link.setDefaultModel(new Model<String>(subject.getLink())));

    form.add(new AjaxButton("submit") {
        /**
         * generated serialization id.
         */
        private static final long serialVersionUID = -6537464906539587006L;

        @Override
        protected void onError(final AjaxRequestTarget target, final Form<?> form) {

            target.addComponent(feedbackPanel);
        }

        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {

            target.addComponent(form);
            target.addComponent(feedbackPanel);

            if (saveSubject(subject))
                return;

            // TODO Sprache:
            feedbackPanel.info("Eingaben bernommen.");
            this.setVisible(false);
        }
    });
    add(feedbackPanel);
    add(form);
}

From source file:hsa.awp.admingui.rule.rules.TermRulePanel.java

License:Open Source License

/**
 * Creates a new {@link TermRulePanel}.//from   w  w w . j  a v  a2 s  .  c  o m
 *
 * @param id   wicket-id.
 * @param rule rule to create or edit.
 */
public TermRulePanel(String id, final TermRule rule) {

    super(id, rule);

    minTerm = new TextField<Integer>("rule.minTerm", new Model<Integer>(1), Integer.class);
    minTerm.add(new MinTermValidator(0));

    maxTerm = new TextField<Integer>("rule.maxTerm", new Model<Integer>(2), Integer.class);
    maxTerm.add(new IValidator<Integer>() {
        /**
         * unique serialization id.
         */
        private static final long serialVersionUID = -6147680454718888847L;

        @Override
        public void validate(IValidatable<Integer> validatable) {

            if (validatable.getValue() < minTerm.getModelObject()) {
                validatable.error(new IValidationError() {
                    @Override
                    public String getErrorMessage(IErrorMessageSource messageSource) {
                        // TODO Language
                        return "Obere Semestergrenze muss grer der unteren Semestergrenze sein.";
                    }
                });
            }
        }
    });

    form.add(maxTerm);
    form.add(minTerm);
}