Example usage for org.apache.wicket.markup.html.form Form info

List of usage examples for org.apache.wicket.markup.html.form Form info

Introduction

In this page you can find the example usage for org.apache.wicket.markup.html.form Form info.

Prototype

@Override
public final void info(final Serializable message) 

Source Link

Document

Registers an informational feedback message for this component

Usage

From source file:de.inren.frontend.banking.category.EditOrCreateCategoryPanel.java

License:Apache License

@Override
protected void initGui() {

    Form<Category> form = new Form<Category>("form", new CompoundPropertyModel<Category>(category));

    StringResourceModel lName = new StringResourceModel("name.label", EditOrCreateCategoryPanel.this, null);
    form.add(new Label("name.label", lName));
    form.add(new TextField<String>("name", String.class).setRequired(true).setLabel(lName).setRequired(false)
            .setLabel(lName));//from  ww  w  .ja v  a2  s.  c o m

    StringResourceModel lDescription = new StringResourceModel("description.label",
            EditOrCreateCategoryPanel.this, null);
    form.add(new Label("description.label", lDescription));
    form.add(new TextField<String>("description", String.class).setRequired(true).setLabel(lDescription)
            .setRequired(false).setLabel(lDescription));

    StringResourceModel lIncome = new StringResourceModel("income.label", EditOrCreateCategoryPanel.this, null);
    form.add(new Label("income.label", lIncome));
    form.add(new CheckBox("income").setLabel(lIncome));

    StringResourceModel lMarksMonth = new StringResourceModel("marksMonth.label",
            EditOrCreateCategoryPanel.this, null);
    form.add(new Label("marksMonth.label", lMarksMonth));
    form.add(new CheckBox("marksMonth").setLabel(lMarksMonth));

    form.add(new AjaxLink<Void>("cancel") {
        @Override
        public void onClick(AjaxRequestTarget target) {
            getSession().getFeedbackMessages().clear();
            switchToManagePanel(target);
        }
    });

    form.add(new AjaxButton("submit") {
        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
            try {
                Category u = bankDataService.save((Category) form.getModelObject());
                form.info(new StringResourceModel("feedback.success", EditOrCreateCategoryPanel.this, null)
                        .getString());
                switchToManagePanel(target);
            } catch (Exception e) {
                log.error(e.getMessage(), e);
                form.error(new StringResourceModel("TODO", EditOrCreateCategoryPanel.this, null).getString());
                target.add(getFeedback());
            }
        }

        @Override
        protected void onError(AjaxRequestTarget target, Form<?> form) {
            FeedbackPanel f = getFeedback();
            if (target != null && f != null) {
                target.add(f);
            }
        }
    });

    add(form);

    add(new PrincipalTablePanel("pribcipalInfo"));
}

From source file:de.inren.frontend.banking.EditOrCreateTransactionPanel.java

License:Apache License

@Override
protected void initGui() {

    Form<Transaction> form = new Form<Transaction>("form", new CompoundPropertyModel<Transaction>(transaction));

    StringResourceModel lCategory = new StringResourceModel("category.label", EditOrCreateTransactionPanel.this,
            null);/*www.  ja  va  2s  .c  om*/
    form.add(new Label("category.label", lCategory));
    form.add(new DropDownChoice<String>("category", getCategories()));

    List<String> allTags = new ArrayList<String>();
    try {
        allTags = bankDataService.loadAllTagNames();
    } catch (RuntimeException e1) {
        e1.printStackTrace();
    }
    StringResourceModel lTagList = new StringResourceModel("tagList.label", EditOrCreateTransactionPanel.this,
            null);
    form.add(new Label("tagList.label", lTagList));

    form.add(new Palette<String>("tagList", new ListModel<String>(allTags), new IChoiceRenderer<String>() {

        @Override
        public Object getDisplayValue(String object) {
            return object;
        }

        @Override
        public String getIdValue(String object, int index) {
            return object;
        }
    }, 5, false));

    StringResourceModel lCategoryFixed = new StringResourceModel("categoryFixed.label",
            EditOrCreateTransactionPanel.this, null);
    form.add(new Label("categoryFixed.label", lCategoryFixed));
    form.add(new CheckBox("categoryFixed").setLabel(lCategoryFixed));

    StringResourceModel lPrincipal = new StringResourceModel("principal.label",
            EditOrCreateTransactionPanel.this, null);
    form.add(new Label("principal.label", lPrincipal));
    form.add(new TextField<String>("principal", String.class).setRequired(false).setLabel(lPrincipal)
            .setEnabled(false));

    StringResourceModel lAccountingtext = new StringResourceModel("accountingText.label",
            EditOrCreateTransactionPanel.this, null);
    form.add(new Label("accountingText.label", lAccountingtext));
    form.add(new TextField<String>("accountingText", String.class).setRequired(false).setLabel(lAccountingtext)
            .setEnabled(false));

    StringResourceModel lPurpose = new StringResourceModel("purpose.label", EditOrCreateTransactionPanel.this,
            null);
    form.add(new Label("purpose.label", lPurpose));
    form.add(new TextField<String>("purpose", String.class).setRequired(true).setLabel(lPurpose)
            .setLabel(lPurpose).setEnabled(false));

    form.add(new AjaxLink<Void>("cancel") {
        @Override
        public void onClick(AjaxRequestTarget target) {
            getSession().getFeedbackMessages().clear();
            delegate.switchToComponent(target, delegate.getManagePanel());
        }
    });

    form.add(new AjaxButton("submit") {
        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
            try {
                Transaction u = bankDataService.save((Transaction) form.getModelObject());
                form.info(new StringResourceModel("feedback.success", EditOrCreateTransactionPanel.this, null)
                        .getString());
                delegate.switchToComponent(target, delegate.getManagePanel());
            } catch (Exception e) {
                form.error(
                        new StringResourceModel("TODO", EditOrCreateTransactionPanel.this, null).getString());
                target.add(getFeedback());
            }
        }

        @Override
        protected void onError(AjaxRequestTarget target, Form<?> form) {
            FeedbackPanel f = getFeedback();
            if (target != null && f != null) {
                target.add(f);
            }
        }
    });

    add(form);
}

From source file:de.inren.frontend.banking.filter.EditOrCreateCategoryFilterPanel.java

License:Apache License

@Override
protected void initGui() {

    final Component table = getTable("table");

    Form<CategoryFilter> form = new Form<CategoryFilter>("form",
            new CompoundPropertyModel<CategoryFilter>(categoryFilter));

    StringResourceModel lCategory = new StringResourceModel("category.label",
            EditOrCreateCategoryFilterPanel.this, null);
    form.add(new Label("category.label", lCategory));
    form.add(new DropDownChoice<Category>("category", getCategories(), new IChoiceRenderer<Category>() {

        @Override//ww  w  .j  a  v  a  2  s  .co  m
        public Object getDisplayValue(Category object) {
            return object.getName();
        }

        @Override
        public String getIdValue(Category object, int index) {
            return String.valueOf(index);
        }
    }));

    StringResourceModel lAccountingTextFilter = new StringResourceModel("accountingTextFilter.label",
            EditOrCreateCategoryFilterPanel.this, null);
    form.add(new Label("accountingTextFilter.label", lAccountingTextFilter));
    form.add(new TextField<String>("accountingTextFilter", String.class).setRequired(false)
            .setLabel(lAccountingTextFilter).setRequired(false).setLabel(lAccountingTextFilter));

    StringResourceModel lPrincipalFilter = new StringResourceModel("principalFilter.label",
            EditOrCreateCategoryFilterPanel.this, null);
    form.add(new Label("principalFilter.label", lPrincipalFilter));
    form.add(new TextField<String>("principalFilter", String.class).setRequired(false)
            .setLabel(lPrincipalFilter).setRequired(false).setLabel(lPrincipalFilter));

    StringResourceModel lPurposeFilter = new StringResourceModel("purposeFilter.label",
            EditOrCreateCategoryFilterPanel.this, null);
    form.add(new Label("purposeFilter.label", lPurposeFilter));
    form.add(new TextField<String>("purposeFilter", String.class).setRequired(false).setLabel(lPurposeFilter)
            .setRequired(false).setLabel(lPurposeFilter));

    form.add(new AjaxLink<Void>("cancel") {
        @Override
        public void onClick(AjaxRequestTarget target) {
            getSession().getFeedbackMessages().clear();
            switchToManagePanel(target);
        }
    });

    form.add(new AjaxButton("submit") {
        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
            try {
                CategoryFilter u = bankDataService.save((CategoryFilter) form.getModelObject());
                form.info(
                        new StringResourceModel("feedback.success", EditOrCreateCategoryFilterPanel.this, null)
                                .getString());
                switchToManagePanel(target);
            } catch (Exception e) {
                log.error(e.getMessage(), e);
                form.error(new StringResourceModel("TODO", EditOrCreateCategoryFilterPanel.this, null)
                        .getString());
                target.add(getFeedback());
            }
        }

        @Override
        protected void onError(AjaxRequestTarget target, Form<?> form) {
            FeedbackPanel f = getFeedback();
            if (target != null && f != null) {
                target.add(f);
            }
        }
    });

    form.add(new AjaxButton("testFilter") {
        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
            try {
                target.add(table);

            } catch (Exception e) {
                log.error(e.getMessage(), e);
                form.error(new StringResourceModel("TODO", EditOrCreateCategoryFilterPanel.this, null)
                        .getString());
                target.add(getFeedback());
            }
        }

        @Override
        protected void onError(AjaxRequestTarget target, Form<?> form) {
            FeedbackPanel f = getFeedback();
            if (target != null && f != null) {
                target.add(f);
            }
        }
    });
    add(form);

    add(table);

}

From source file:de.inren.frontend.banking.tagging.EditOrCreateTagPanel.java

License:Apache License

@Override
protected void initGui() {

    Form<Tag> form = new Form<Tag>("form", new CompoundPropertyModel<Tag>(tag));

    StringResourceModel lName = new StringResourceModel("name.label", EditOrCreateTagPanel.this, null);
    form.add(new Label("name.label", lName));
    form.add(new TextField<String>("name", String.class).setRequired(true).setLabel(lName).setRequired(false)
            .setLabel(lName));//from  ww  w  . j a v  a  2  s  .c  om

    StringResourceModel lDescription = new StringResourceModel("description.label", EditOrCreateTagPanel.this,
            null);
    form.add(new Label("description.label", lDescription));
    form.add(new TextField<String>("description", String.class).setRequired(true).setLabel(lDescription)
            .setRequired(false).setLabel(lDescription));

    form.add(new AjaxLink<Void>("cancel") {
        @Override
        public void onClick(AjaxRequestTarget target) {
            getSession().getFeedbackMessages().clear();
            switchToManagePanel(target);
        }
    });

    form.add(new AjaxButton("submit") {
        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
            try {
                Tag u = bankDataService.save((Tag) form.getModelObject());
                form.info(new StringResourceModel("feedback.success", EditOrCreateTagPanel.this, null)
                        .getString());
                switchToManagePanel(target);
            } catch (Exception e) {
                log.error(e.getMessage(), e);
                form.error(new StringResourceModel("TODO", EditOrCreateTagPanel.this, null).getString());
                target.add(getFeedback());
            }
        }

        @Override
        protected void onError(AjaxRequestTarget target, Form<?> form) {
            FeedbackPanel f = getFeedback();
            if (target != null && f != null) {
                target.add(f);
            }
        }
    });

    add(form);
}

From source file:de.inren.frontend.blogpost.EditOrCreateBlogPostPanel.java

License:Apache License

@Override
protected void initGui() {

    Form<BlogPost> form = new Form<BlogPost>("form", new CompoundPropertyModel<BlogPost>(blogPost));

    StringResourceModel lTitle = new StringResourceModel("title.label", EditOrCreateBlogPostPanel.this, null);
    form.add(new Label("title.label", lTitle));
    form.add(new TextField<String>("title", String.class).setRequired(true).setLabel(lTitle).setRequired(false)
            .setLabel(lTitle));//from ww w  .j a v a  2  s . c  o  m

    StringResourceModel LExtract = new StringResourceModel("extract.label", EditOrCreateBlogPostPanel.this,
            null);
    form.add(new Label("extract.label", LExtract));
    form.add(new TextField<String>("extract", String.class).setRequired(false).setLabel(LExtract)
            .setRequired(false).setLabel(LExtract));

    StringResourceModel lContent = new StringResourceModel("content.label", EditOrCreateBlogPostPanel.this,
            null);
    form.add(new Label("content.label", lContent));
    form.add(new TextField<String>("content", String.class).setRequired(true).setLabel(lContent)
            .setRequired(false).setLabel(lContent));

    List<Role> allRoles = new ArrayList<Role>();
    try {
        allRoles = roleService.loadAllRoles();
    } catch (RuntimeException e1) {
        e1.printStackTrace();
    }
    StringResourceModel lRoles = new StringResourceModel("roles.label", EditOrCreateBlogPostPanel.this, null);
    form.add(new Label("roles.label", lRoles));

    form.add(new Palette<Role>("roles", new ListModel<Role>(allRoles), new ChoiceRenderer<Role>("name", "id"),
            5, false));

    form.add(new AjaxLink<Void>("cancel") {
        @Override
        public void onClick(AjaxRequestTarget target) {
            getSession().getFeedbackMessages().clear();
            delegate.switchToComponent(target, delegate.getManagePanel());
        }
    });

    form.add(new AjaxButton("submit") {
        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
            try {
                BlogPost blogPost = (BlogPost) form.getModelObject();
                blogPost.setUid(getUser().getId());
                blogPost.setCreated(new Timestamp(Calendar.getInstance().getTime().getTime()));
                blogPost.setState(PublishState.PUBLISHED);
                blogPost.setAvailableForComment(true);
                BlogPost u = blogPostService.save(blogPost);
                form.info(new StringResourceModel("feedback.success", EditOrCreateBlogPostPanel.this, null)
                        .getString());
                delegate.switchToComponent(target, delegate.getManagePanel());
            } catch (Exception e) {
                log.error(e.getMessage(), e);
                form.error(new StringResourceModel("TODO", EditOrCreateBlogPostPanel.this, null).getString());
                target.add(getFeedback());
            }
        }

        @Override
        protected void onError(AjaxRequestTarget target, Form<?> form) {
            FeedbackPanel f = getFeedback();
            if (target != null && f != null) {
                target.add(f);
            }
        }
    });

    add(form);
}

From source file:de.inren.frontend.carlogbook.EditOrCreateCarPanel.java

License:Apache License

@Override
protected void initGui() {

    Form<Car> form = new Form<Car>("form", new CompoundPropertyModel<Car>(car));

    StringResourceModel lPlate = new StringResourceModel("plate.label", EditOrCreateCarPanel.this, null);
    form.add(new Label("plate.label", lPlate));
    form.add(new TextField<String>("plate", String.class).setRequired(true).setLabel(lPlate).setRequired(false)
            .setLabel(lPlate));//from  ww w . j ava 2s . co  m

    StringResourceModel lDescription = new StringResourceModel("description.label", EditOrCreateCarPanel.this,
            null);
    form.add(new Label("description.label", lDescription));
    form.add(new TextField<String>("description", String.class).setRequired(false).setLabel(lDescription)
            .setRequired(false).setLabel(lDescription));

    form.add(new AjaxLink<Void>("cancel") {
        @Override
        public void onClick(AjaxRequestTarget target) {
            getSession().getFeedbackMessages().clear();
            delegate.switchToComponent(target, delegate.getManagePanel());
        }
    });

    form.add(new AjaxButton("submit") {
        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
            try {
                Car u = carLogBookService.saveCar((Car) form.getModelObject());
                form.info(new StringResourceModel("feedback.success", EditOrCreateCarPanel.this, null)
                        .getString());
                delegate.switchToComponent(target, delegate.getManagePanel());
            } catch (Exception e) {
                log.error(e.getMessage(), e);
                form.error(new StringResourceModel("TODO", EditOrCreateCarPanel.this, null).getString());
                target.add(getFeedback());
            }
        }

        @Override
        protected void onError(AjaxRequestTarget target, Form<?> form) {
            FeedbackPanel f = getFeedback();
            if (target != null && f != null) {
                target.add(f);
            }
        }
    });

    add(form);
}

From source file:de.inren.frontend.componentaccess.EditOrCreateComponentAccessPanel.java

License:Apache License

@Override
protected void initGui() {

    Form<ComponentAccess> form = new Form<ComponentAccess>("form",
            new CompoundPropertyModel<ComponentAccess>(componentAccess));

    List<Role> allRoles = new ArrayList<Role>();
    try {//from w w  w  . j a va  2 s.  c  o  m
        allRoles = roleService.loadAllRoles();
    } catch (RuntimeException e1) {
        e1.printStackTrace();
    }
    StringResourceModel lRoles = new StringResourceModel("roles.label", EditOrCreateComponentAccessPanel.this,
            null);
    form.add(new Label("roles.label", lRoles));

    form.add(new Palette<Role>("roles", new ListModel<Role>(allRoles), new ChoiceRenderer<Role>("name", "id"),
            5, false));

    form.add(new AjaxLink<Void>("cancel") {
        @Override
        public void onClick(AjaxRequestTarget target) {
            getSession().getFeedbackMessages().clear();
            delegate.switchToComponent(target, delegate.getManagePanel());
        }
    });

    form.add(new AjaxButton("submit") {
        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
            ComponentAccess componentAccess = componentAccessService
                    .save((ComponentAccess) form.getModelObject());
            form.info(new StringResourceModel("feedback.success", EditOrCreateComponentAccessPanel.this, null)
                    .getString());
            delegate.switchToComponent(target, delegate.getManagePanel());

        }

        @Override
        protected void onError(AjaxRequestTarget target, Form<?> form) {
            FeedbackPanel f = getFeedback();
            if (target != null && f != null) {
                target.add(f);
            }
        }
    });

    add(form);
}

From source file:de.inren.frontend.dbproperty.EditOrCreateDbPropertyPanel.java

License:Apache License

@Override
protected void initGui() {

    Form<DbProperty> form = new Form<DbProperty>("form", new CompoundPropertyModel<DbProperty>(dbProperty));

    StringResourceModel lName = new StringResourceModel("name.label", EditOrCreateDbPropertyPanel.this, null);
    form.add(new Label("name.label", lName));
    form.add(new TextField<String>("name", String.class).setRequired(true).setLabel(lName).setRequired(false)
            .setLabel(lName));/*from   w w w .jav  a  2  s  .com*/

    StringResourceModel lHost = new StringResourceModel("host.label", EditOrCreateDbPropertyPanel.this, null);
    form.add(new Label("host.label", lHost));
    form.add(new TextField<String>("host", String.class).setRequired(false).setLabel(lHost).setRequired(false)
            .setLabel(lHost));

    StringResourceModel lValue = new StringResourceModel("value.label", EditOrCreateDbPropertyPanel.this, null);
    form.add(new Label("value.label", lValue));
    form.add(new TextField<String>("value", String.class).setRequired(true).setLabel(lValue).setRequired(false)
            .setLabel(lValue));

    StringResourceModel lDescription = new StringResourceModel("description.label",
            EditOrCreateDbPropertyPanel.this, null);
    form.add(new Label("description.label", lDescription));
    form.add(new TextField<String>("description", String.class).setRequired(false).setLabel(lDescription)
            .setRequired(false).setLabel(lDescription));

    form.add(new AjaxLink<Void>("cancel") {
        @Override
        public void onClick(AjaxRequestTarget target) {
            getSession().getFeedbackMessages().clear();
            delegate.switchToComponent(target, delegate.getManagePanel());
        }
    });

    form.add(new AjaxButton("submit") {
        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
            try {
                DbProperty u = dbPropertyService.save((DbProperty) form.getModelObject());
                form.info(new StringResourceModel("feedback.success", EditOrCreateDbPropertyPanel.this, null)
                        .getString());
                delegate.switchToComponent(target, delegate.getManagePanel());
            } catch (Exception e) {
                form.error(new StringResourceModel("TODO", EditOrCreateDbPropertyPanel.this, null).getString());
                target.add(getFeedback());
            }
        }

        @Override
        protected void onError(AjaxRequestTarget target, Form<?> form) {
            FeedbackPanel f = getFeedback();
            if (target != null && f != null) {
                target.add(f);
            }
        }
    });

    add(form);
}

From source file:de.inren.frontend.group.EditOrCreateGroupPanel.java

License:Apache License

@Override
protected void initGui() {

    Form<Group> form = new Form<Group>("form", new CompoundPropertyModel<Group>(group));

    StringResourceModel lName = new StringResourceModel("name.label", EditOrCreateGroupPanel.this, null);
    form.add(new Label("name.label", lName));
    form.add(new TextField<String>("name", String.class).setRequired(true).setLabel(lName).setRequired(false)
            .setLabel(lName));// ww  w .  j  a v a2s.  c o  m

    StringResourceModel lDescription = new StringResourceModel("description.label", EditOrCreateGroupPanel.this,
            null);
    form.add(new Label("description.label", lDescription));
    form.add(new TextField<String>("description", String.class).setRequired(false).setLabel(lDescription)
            .setRequired(false).setLabel(lDescription));

    List<Role> allRoles = new ArrayList<Role>();
    try {
        allRoles = roleService.loadAllRoles();
    } catch (RuntimeException e1) {
        e1.printStackTrace();
    }
    StringResourceModel lRoles = new StringResourceModel("roles.label", EditOrCreateGroupPanel.this, null);
    form.add(new Label("roles.label", lRoles));

    form.add(new Palette<Role>("roles", new ListModel<Role>(allRoles), new ChoiceRenderer<Role>("name", "id"),
            5, false));

    form.add(new AjaxLink<Void>("cancel") {
        @Override
        public void onClick(AjaxRequestTarget target) {
            getSession().getFeedbackMessages().clear();
            delegate.switchToComponent(target, delegate.getManagePanel());
        }
    });

    form.add(new AjaxButton("submit") {
        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
            try {
                Group u = groupService.save((Group) form.getModelObject());
                form.info(new StringResourceModel("feedback.success", EditOrCreateGroupPanel.this, null)
                        .getString());
                delegate.switchToComponent(target, delegate.getManagePanel());
            } catch (Exception e) {
                log.error(e.getMessage(), e);
                form.error(new StringResourceModel("TODO", EditOrCreateGroupPanel.this, null).getString());
                target.add(getFeedback());
            }
        }

        @Override
        protected void onError(AjaxRequestTarget target, Form<?> form) {
            FeedbackPanel f = getFeedback();
            if (target != null && f != null) {
                target.add(f);
            }
        }
    });

    add(form);
}

From source file:de.inren.frontend.health.EditOrCreateMeasurementPanel.java

License:Apache License

@Override
protected void initGui() {

    Form<Measurement> form = new Form<Measurement>("form");
    form.setDefaultModel(getDefaultModel());

    StringResourceModel lDate = new StringResourceModel("date.label", EditOrCreateMeasurementPanel.this, null);
    form.add(new Label("date.label", lDate));
    form.add(new DateTextField("date").setRequired(true).setLabel(lDate));

    StringResourceModel lWeight = new StringResourceModel("weight.label", EditOrCreateMeasurementPanel.this,
            null);//w ww. j a  va 2  s.  co  m
    form.add(new Label("weight.label", lWeight));
    form.add(new TextField<String>("weight", String.class).setRequired(true).setLabel(lWeight));

    StringResourceModel lFat = new StringResourceModel("fat.label", EditOrCreateMeasurementPanel.this, null);
    form.add(new Label("fat.label", lFat));
    form.add(new TextField<String>("fat", String.class).setRequired(true).setLabel(lFat));

    StringResourceModel lWater = new StringResourceModel("water.label", EditOrCreateMeasurementPanel.this,
            null);
    form.add(new Label("water.label", lWater));
    form.add(new TextField<String>("water", String.class).setRequired(true).setLabel(lWater));

    StringResourceModel lMuscle = new StringResourceModel("muscle.label", EditOrCreateMeasurementPanel.this,
            null);
    form.add(new Label("muscle.label", lMuscle));
    form.add(new TextField<String>("muscle", String.class).setRequired(true).setLabel(lMuscle));

    StringResourceModel lBone = new StringResourceModel("bone.label", EditOrCreateMeasurementPanel.this, null);
    form.add(new Label("bone.label", lBone));
    form.add(new TextField<String>("bone", String.class).setRequired(true).setLabel(lBone));

    form.add(new AjaxLink<Void>("cancel") {
        @Override
        public void onClick(AjaxRequestTarget target) {
            getSession().getFeedbackMessages().clear();
            delegate.switchToComponent(target, delegate.getManagePanel());
        }
    });

    form.add(new AjaxButton("submit") {
        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
            try {
                Measurement measurement = (Measurement) form.getModelObject();
                measurement.setUid(getUser().getId());

                Measurement u = measurementService.saveMeasurement(measurement);
                form.info(new StringResourceModel("feedback.success", EditOrCreateMeasurementPanel.this, null)
                        .getString());
                delegate.switchToComponent(target, delegate.getManagePanel());
            } catch (Exception e) {
                form.error(
                        new StringResourceModel("TODO", EditOrCreateMeasurementPanel.this, null).getString());
                target.add(getFeedback());
            }
        }

        @Override
        protected void onError(AjaxRequestTarget target, Form<?> form) {
            FeedbackPanel f = getFeedback();
            if (target != null && f != null) {
                target.add(f);
            }
        }
    });

    add(form);
}