List of usage examples for org.apache.wicket.markup.html.basic Label getDefaultModelObjectAsString
public final String getDefaultModelObjectAsString()
From source file:by.parfen.disptaxi.webapp.etc.ChoicePage.java
License:Apache License
/** * Constructor.//from w w w .ja va 2s. c o m */ public ChoicePage() { final City city = cityService.get(15L); List<Street> streetsList; streetsList = streetService.getAllByCity(city); for (Street streetItem : streetsList) { List<Point> pointsList = pointService.getAllByStreet(streetItem); List<String> pointNames = new ArrayList<String>(); for (Point pointItem : pointsList) { pointNames.add(pointItem.getName()); } pointsMap.put(streetItem.getName(), pointNames); } // pointsMap.put("", Arrays.asList("12", "22", "34")); // pointsMap.put("", Arrays.asList("2", "4", "45", "13", "78")); // pointsMap.put("", Arrays.asList("10", "12", "22", "4", "6")); IModel<List<? extends String>> makeChoices = new AbstractReadOnlyModel<List<? extends String>>() { @Override public List<String> getObject() { return new ArrayList<String>(pointsMap.keySet()); } }; IModel<List<? extends String>> modelChoices = new AbstractReadOnlyModel<List<? extends String>>() { @Override public List<String> getObject() { List<String> points = pointsMap.get(selectedStreetName); if (points == null) { points = Collections.emptyList(); } return points; } }; Form<Void> form = new Form<Void>("form"); add(form); final DropDownChoice<String> streets = new DropDownChoice<String>("streets", new PropertyModel<String>(this, "selectedStreetName"), makeChoices); final DropDownChoice<String> points = new DropDownChoice<String>("points", new Model<String>(), modelChoices); points.setOutputMarkupId(true); form.add(streets); form.add(points); final FeedbackPanel feedback = new FeedbackPanel("feedback"); feedback.setOutputMarkupId(true); add(feedback); form.add(new AjaxButton("go") { @Override protected void onAfterSubmit(AjaxRequestTarget target, Form<?> form) { super.onAfterSubmit(target, form); info(" : " + streets.getModelObject() + " " + points.getModelObject()); target.add(feedback); } }); streets.add(new AjaxFormComponentUpdatingBehavior("change") { @Override protected void onUpdate(AjaxRequestTarget target) { target.add(points); } }); Form<Void> ajaxForm = new Form<Void>("ajaxForm"); add(ajaxForm); final AutoCompleteTextField<String> field = new AutoCompleteTextField<String>("ac", new Model<String>("")) { @Override protected Iterator<String> getChoices(String input) { if (Strings.isEmpty(input)) { List<String> emptyList = Collections.emptyList(); return emptyList.iterator(); } List<String> choices = new ArrayList<String>(10); List<Street> streetsList = streetService.getAllByCity(city); for (final Street streetItem : streetsList) { final String streetName = streetItem.getName(); if (streetName.toUpperCase().startsWith(input.toUpperCase())) { choices.add(streetName); if (choices.size() == 10) { break; } } } return choices.iterator(); } }; ajaxForm.add(field); final Label label = new Label("selectedValue", field.getDefaultModel()); label.setOutputMarkupId(true); ajaxForm.add(label); field.add(new AjaxFormSubmitBehavior(ajaxForm, "onchange") { @Override protected void onSubmit(AjaxRequestTarget target) { target.add(label); List<Street> streetList = streetService.getAllByCityAndName(city, label.getDefaultModelObjectAsString()); if (streetList.size() == 1) { setSelectedStreet(streetList.get(0)); } } @Override protected void onError(AjaxRequestTarget target) { } }); }
From source file:com.francetelecom.clara.cloud.presentation.designer.EditServiceIT.java
License:Apache License
@Test public void testEditReadOnly() { try {/* ww w . j a v a 2 s . c o m*/ ApplicationRelease release = manageApplicationRelease.findApplicationReleaseByUID( myTester.getLastRenderedPage().getPageParameters().get("releaseUid").toString()); release.validate(); release.lock(); manageApplicationRelease.updateApplicationRelease(release); } catch (ObjectNotFoundException e) { Assert.fail("could not find application release with id " + myTester.getLastRenderedPage().getPageParameters().get("releaseUid").toString()); } // go on designer step one page to access internal services NavigationUtils.goOnDesignerPage(myTester, releaseUid); myTester.assertRenderedPage(DesignerPage.class); for (final LogicalService service : logicalDeployment.listLogicalServices()) { // When: I try to edit the service int index = GetObjectsUtils.getPositionForItem(myTester, service); Assert.assertFalse("service not found in architecture matrix", -1 == index); myTester.assertVisible(NavigationUtils.getPathForCell(index, 0) + ":cell-view"); DeleteEditObjects.viewServiceAtRow(myTester, index); myTester.assertVisible(NavigationUtils.modalPath); // Then: all displayed fields are read-only Form form = GetObjectsUtils.getModalParamsForm(myTester); form.visitFormComponents(new IVisitor<FormComponent, Void>() { @Override public void component(FormComponent formComponent, IVisit<Void> visit) { if (!(formComponent instanceof Button)) { TagTester tagTester = myTester.getTagByWicketId(((FormComponent) formComponent).getId()); if (tagTester != null) { Assert.assertNotNull(tagTester.getAttribute("disabled")); } } else { if ("addUpdateButton".equals(((Button) formComponent).getId())) { Assert.assertFalse("add/update button should not be visible", ((Button) formComponent).isVisible()); } else if ("cancelCloseButton".equals(((Button) formComponent).getId())) { Label buttonLabel = (Label) ((FormComponent) formComponent).get("cancelLabel"); Assert.assertTrue("cancel/close button should display \"close\"", "close".equals(buttonLabel.getDefaultModelObjectAsString())); } } visit.dontGoDeeper(); } }); } for (final ProcessingNode node : logicalDeployment.listProcessingNodes()) { // When: I try to edit the node int index = GetObjectsUtils.getPositionForItem(myTester, node); Assert.assertFalse("node not found in architecture matrix", -1 == index); myTester.assertVisible(NavigationUtils.getPathForCell(0, index) + ":cell-view"); DeleteEditObjects.viewNodeAtCol(myTester, index); myTester.assertVisible(NavigationUtils.modalPath); // Then: all displayed fields are read-only Form form = GetObjectsUtils.getModalParamsForm(myTester); form.visitFormComponents(new IVisitor<FormComponent, Void>() { @Override public void component(FormComponent object, IVisit<Void> visit) { if (!(object instanceof Button)) { // Assert.assertFalse(((FormComponent)formComponent).getInputName() // + " should be disabled", // ((FormComponent)formComponent).isEnabled()); } visit.dontGoDeeper(); } }); } }
From source file:com.koodaripalvelut.common.wicket.webtest.openid.InfoPage.java
License:Open Source License
public InfoPage() { add(new AjaxLazyLoadPanel(SIGNIN_PANEL_ID) { private static final long serialVersionUID = 1L; @Override//w ww .ja va 2 s . co m public Component getLazyLoadComponent(final String markupId) { return new OpenIDPanel(markupId); } @Override public Component getLoadingComponent(final String markupId) { final Label label = (Label) super.getLoadingComponent(markupId); final StringBuilder sb = new StringBuilder(label.getDefaultModelObjectAsString()); sb.append("<div>"); sb.append(InfoPage.this.getString("loadingMesssage")); sb.append("</div>"); label.setDefaultModel(Model.of(sb.toString())); return label; } }); }
From source file:eu.uqasar.web.pages.qmtree.metric.panels.MetricViewPanel.java
License:Apache License
private IModel<?> replaceBracketsModel(Label label) { return Model.of(label.getDefaultModelObjectAsString().replace("[", "").replace("]", "")); }
From source file:org.apache.isis.viewer.wicket.ui.components.scalars.ScalarPanelAbstract2.java
License:Apache License
protected Label createScalarName(final String id, final String labelCaption) { final Label scalarName = new Label(id, labelCaption); if (getModel().isRequired()) { final String label = scalarName.getDefaultModelObjectAsString(); if (!Strings.isNullOrEmpty(label)) { scalarName.add(new CssClassAppender("mandatory")); }/* w w w .j av a2 s . c o m*/ } NamedFacet namedFacet = getModel().getFacet(NamedFacet.class); if (namedFacet != null) { scalarName.setEscapeModelStrings(namedFacet.escaped()); } return scalarName; }
From source file:org.apache.isis.viewer.wicket.ui.components.scalars.ScalarPanelTextFieldAbstract.java
License:Apache License
@Override protected MarkupContainer addComponentForRegular() { textField = createTextFieldForRegular(); textField.setOutputMarkupId(true);//from w w w . j ava2 s . c o m addStandardSemantics(); addSemantics(); final MarkupContainer labelIfRegular = createFormComponentLabel(); scalarTypeContainer.add(labelIfRegular); final Label scalarName = new Label(ID_SCALAR_NAME, getRendering().getLabelCaption(textField)); NamedFacet namedFacet = getModel().getFacet(NamedFacet.class); if (namedFacet != null) { scalarName.setEscapeModelStrings(namedFacet.escaped()); } // find the links... final List<LinkAndLabel> entityActions = EntityActionUtil .getEntityActionLinksForAssociation(this.scalarModel, getDeploymentType()); addPositioningCssTo(labelIfRegular, entityActions); if (getModel().isRequired()) { final String label = scalarName.getDefaultModelObjectAsString(); if (!Strings.isNullOrEmpty(label)) { scalarName.add(new CssClassAppender("mandatory")); } } labelIfRegular.add(scalarName); final String describedAs = getModel().getDescribedAs(); if (describedAs != null) { labelIfRegular.add(new AttributeModifier("title", Model.of(describedAs))); } addFeedbackTo(labelIfRegular, textField); // ... add entity links to panel (below and to right) addEntityActionLinksBelowAndRight(labelIfRegular, entityActions); return labelIfRegular; }
From source file:org.apache.isis.viewer.wicket.ui.components.scalars.valuechoices.ValueChoicesSelect2Panel.java
License:Apache License
@Override protected MarkupContainer addComponentForRegular() { // same pattern as in ReferencePanel if (select2 == null) { if (getModel().isCollection()) { final IModel<ArrayList<ObjectAdapterMemento>> modelObject = ScalarModelWithMultiPending.Util .createModel(this); select2 = Select2.newSelect2MultiChoice(ID_SCALAR_VALUE, modelObject, scalarModel); } else {//from www .j av a 2 s . c o m final IModel<ObjectAdapterMemento> modelObject = ScalarModelWithPending.Util.createModel(this); select2 = Select2.newSelect2Choice(ID_SCALAR_VALUE, modelObject, scalarModel); } final ObjectAdapter[] actionArgsHint = scalarModel.getActionArgsHint(); setProviderAndCurrAndPending(select2, actionArgsHint); addStandardSemantics(); } else { select2.clearInput(); } final MarkupContainer labelIfRegular = createFormComponentLabel(); if (getModel().isRequired()) { labelIfRegular.add(new CssClassAppender("mandatory")); } addOrReplace(labelIfRegular); final Label scalarName = new Label(ID_SCALAR_NAME, getRendering().getLabelCaption(select2.component())); if (getModel().isRequired()) { final String label = scalarName.getDefaultModelObjectAsString(); if (!Strings.isNullOrEmpty(label)) { scalarName.add(new CssClassAppender("mandatory")); } } labelIfRegular.addOrReplace(scalarName); NamedFacet namedFacet = getModel().getFacet(NamedFacet.class); if (namedFacet != null) { scalarName.setEscapeModelStrings(namedFacet.escaped()); } // find the links... final List<LinkAndLabel> entityActions = EntityActionUtil .getEntityActionLinksForAssociation(this.scalarModel, getDeploymentCategory()); addPositioningCssTo(labelIfRegular, entityActions); addFeedbackOnlyTo(labelIfRegular, select2.component()); addEditPropertyTo(labelIfRegular); // ... add entity links to panel (below and to right) addEntityActionLinksBelowAndRight(labelIfRegular, entityActions); return labelIfRegular; }
From source file:org.apache.isis.viewer.wicket.ui.components.widgets.valuechoices.ValueChoicesSelect2Panel.java
License:Apache License
@Override protected MarkupContainer addComponentForRegular() { final IModel<ObjectAdapterMemento> modelObject = ScalarModelWithPending.Util.createModel(this); final ObjectAdapter[] actionArgsHint = getScalarModel().getActionArgsHint(); // same pattern as in EntityLinkSelect2Panel if (select2Field == null) { select2Field = Select2ChoiceUtil.newSelect2Choice(ID_SCALAR_VALUE, modelObject, getScalarModel()); setChoices(actionArgsHint);/*from ww w . j av a2s. c o m*/ addStandardSemantics(); } else { select2Field.clearInput(); } final MarkupContainer labelIfRegular = createFormComponentLabel(); if (getModel().isRequired()) { labelIfRegular.add(new CssClassAppender("mandatory")); } addOrReplace(labelIfRegular); final Label scalarName = new Label(ID_SCALAR_NAME, getRendering().getLabelCaption(select2Field)); if (getModel().isRequired()) { final String label = scalarName.getDefaultModelObjectAsString(); if (!Strings.isNullOrEmpty(label)) { scalarName.add(new CssClassAppender("mandatory")); } } labelIfRegular.addOrReplace(scalarName); NamedFacet namedFacet = getModel().getFacet(NamedFacet.class); if (namedFacet != null) { scalarName.setEscapeModelStrings(namedFacet.escaped()); } // find the links... final List<LinkAndLabel> entityActions = EntityActionUtil .getEntityActionLinksForAssociation(this.scalarModel, getDeploymentType()); addPositioningCssTo(labelIfRegular, entityActions); addFeedbackTo(labelIfRegular, select2Field); // ... add entity links to panel (below and to right) addEntityActionLinksBelowAndRight(labelIfRegular, entityActions); return labelIfRegular; }
From source file:org.apache.syncope.client.console.pages.ApprovalModalPage.java
License:Apache License
public ApprovalModalPage(final PageReference pageRef, final ModalWindow window, final WorkflowFormTO formTO) { super();/*from www .j a v a 2 s . com*/ IModel<List<WorkflowFormPropertyTO>> formProps = new LoadableDetachableModel<List<WorkflowFormPropertyTO>>() { private static final long serialVersionUID = 3169142472626817508L; @Override protected List<WorkflowFormPropertyTO> load() { return formTO.getProperties(); } }; final ListView<WorkflowFormPropertyTO> propView = new AltListView<WorkflowFormPropertyTO>("propView", formProps) { private static final long serialVersionUID = 9101744072914090143L; @Override @SuppressWarnings({ "unchecked", "rawtypes" }) protected void populateItem(final ListItem<WorkflowFormPropertyTO> item) { final WorkflowFormPropertyTO prop = item.getModelObject(); Label label = new Label("key", prop.getName() == null ? prop.getId() : prop.getName()); item.add(label); FieldPanel field; switch (prop.getType()) { case Boolean: field = new AjaxDropDownChoicePanel("value", label.getDefaultModelObjectAsString(), new Model<Boolean>(Boolean.valueOf(prop.getValue()))) .setChoices(Arrays.asList(new String[] { "Yes", "No" })); break; case Date: SimpleDateFormat df = StringUtils.isNotBlank(prop.getDatePattern()) ? new SimpleDateFormat(prop.getDatePattern()) : new SimpleDateFormat(); Date parsedDate = null; if (StringUtils.isNotBlank(prop.getValue())) { try { parsedDate = df.parse(prop.getValue()); } catch (ParseException e) { LOG.error("Unparsable date: {}", prop.getValue(), e); } } field = new DateTimeFieldPanel("value", label.getDefaultModelObjectAsString(), new Model<Date>(parsedDate), df.toLocalizedPattern()); break; case Enum: MapChoiceRenderer<String, String> enumCR = new MapChoiceRenderer<String, String>( prop.getEnumValues()); field = new AjaxDropDownChoicePanel("value", label.getDefaultModelObjectAsString(), new Model(prop.getValue())).setChoiceRenderer(enumCR).setChoices(new Model() { private static final long serialVersionUID = -858521070366432018L; @Override public Serializable getObject() { return new ArrayList<String>(prop.getEnumValues().keySet()); } }); break; case Long: field = new SpinnerFieldPanel<Long>("value", label.getDefaultModelObjectAsString(), Long.class, new Model<Long>(NumberUtils.toLong(prop.getValue())), null, null); break; case String: default: field = new AjaxTextFieldPanel("value", PARENT_PATH, new Model<String>(prop.getValue())); break; } field.setReadOnly(!prop.isWritable()); if (prop.isRequired()) { field.addRequiredLabel(); } item.add(field); } }; final AjaxButton userDetails = new IndicatingAjaxButton("userDetails", new Model<String>(getString("userDetails"))) { private static final long serialVersionUID = -4804368561204623354L; @Override protected void onSubmit(final AjaxRequestTarget target, final Form<?> form) { editUserWin.setPageCreator(new ModalWindow.PageCreator() { private static final long serialVersionUID = -7834632442532690940L; @Override public Page createPage() { return new ViewUserModalPage(ApprovalModalPage.this.getPageReference(), editUserWin, userRestClient.read(formTO.getUserKey())) { private static final long serialVersionUID = -2819994749866481607L; @Override protected void closeAction(final AjaxRequestTarget target, final Form form) { setResponsePage(ApprovalModalPage.this); } }; } }); editUserWin.show(target); } }; MetaDataRoleAuthorizationStrategy.authorize(userDetails, ENABLE, xmlRolesReader.getEntitlement("Users", "read")); final AjaxButton submit = new IndicatingAjaxButton(APPLY, new Model<String>(getString(SUBMIT))) { private static final long serialVersionUID = -958724007591692537L; @Override protected void onSubmit(final AjaxRequestTarget target, final Form<?> form) { Map<String, WorkflowFormPropertyTO> props = formTO.getPropertyMap(); for (int i = 0; i < propView.size(); i++) { @SuppressWarnings("unchecked") ListItem<WorkflowFormPropertyTO> item = (ListItem<WorkflowFormPropertyTO>) propView.get(i); String input = ((FieldPanel) item.get("value")).getField().getInput(); if (!props.containsKey(item.getModelObject().getId())) { props.put(item.getModelObject().getId(), new WorkflowFormPropertyTO()); } if (item.getModelObject().isWritable()) { switch (item.getModelObject().getType()) { case Boolean: props.get(item.getModelObject().getId()).setValue(String.valueOf("0".equals(input))); break; case Date: case Enum: case String: case Long: default: props.get(item.getModelObject().getId()).setValue(input); break; } } } formTO.getProperties().clear(); formTO.getProperties().addAll(props.values()); try { restClient.submitForm(formTO); ((Todo) pageRef.getPage()).setModalResult(true); window.close(target); } catch (SyncopeClientException e) { error(getString(Constants.ERROR) + ": " + e.getMessage()); LOG.error("While submitting form {}", formTO, e); feedbackPanel.refresh(target); } } @Override protected void onError(final AjaxRequestTarget target, final Form<?> form) { feedbackPanel.refresh(target); } }; final AjaxButton cancel = new IndicatingAjaxButton(CANCEL, new ResourceModel(CANCEL)) { private static final long serialVersionUID = -958724007591692537L; @Override protected void onSubmit(final AjaxRequestTarget target, final Form form) { window.close(target); } @Override protected void onError(final AjaxRequestTarget target, final Form form) { // nothing } }; cancel.setDefaultFormProcessing(false); Form form = new Form(FORM); form.add(propView); form.add(userDetails); form.add(submit); form.add(cancel); MetaDataRoleAuthorizationStrategy.authorize(form, ENABLE, xmlRolesReader.getEntitlement("Approval", SUBMIT)); editUserWin = new ModalWindow("editUserWin"); editUserWin.setCssClassName(ModalWindow.CSS_CLASS_GRAY); editUserWin.setInitialHeight(USER_WIN_HEIGHT); editUserWin.setInitialWidth(USER_WIN_WIDTH); editUserWin.setCookieName("edit-user-modal"); add(editUserWin); add(form); }
From source file:org.apache.syncope.console.pages.ApprovalModalPage.java
License:Apache License
public ApprovalModalPage(final PageReference pageRef, final ModalWindow window, final WorkflowFormTO formTO) { super();// ww w . j a v a 2s.com IModel<List<WorkflowFormPropertyTO>> formProps = new LoadableDetachableModel<List<WorkflowFormPropertyTO>>() { private static final long serialVersionUID = 3169142472626817508L; @Override protected List<WorkflowFormPropertyTO> load() { return formTO.getProperties(); } }; final ListView<WorkflowFormPropertyTO> propView = new AltListView<WorkflowFormPropertyTO>("propView", formProps) { private static final long serialVersionUID = 9101744072914090143L; @Override @SuppressWarnings({ "unchecked", "rawtypes" }) protected void populateItem(final ListItem<WorkflowFormPropertyTO> item) { final WorkflowFormPropertyTO prop = item.getModelObject(); Label label = new Label("key", prop.getName() == null ? prop.getId() : prop.getName()); item.add(label); FieldPanel field; switch (prop.getType()) { case Boolean: field = new AjaxDropDownChoicePanel("value", label.getDefaultModelObjectAsString(), new Model<Boolean>(Boolean.valueOf(prop.getValue()))) .setChoices(Arrays.asList(new String[] { "Yes", "No" })); break; case Date: SimpleDateFormat df = StringUtils.isNotBlank(prop.getDatePattern()) ? new SimpleDateFormat(prop.getDatePattern()) : new SimpleDateFormat(); Date parsedDate = null; if (StringUtils.isNotBlank(prop.getValue())) { try { parsedDate = df.parse(prop.getValue()); } catch (ParseException e) { LOG.error("Unparsable date: {}", prop.getValue(), e); } } field = new DateTimeFieldPanel("value", label.getDefaultModelObjectAsString(), new Model<Date>(parsedDate), df.toLocalizedPattern()); break; case Enum: MapChoiceRenderer<String, String> enumCR = new MapChoiceRenderer<String, String>( prop.getEnumValues()); field = new AjaxDropDownChoicePanel("value", label.getDefaultModelObjectAsString(), new Model(prop.getValue())).setChoiceRenderer(enumCR).setChoices(new Model() { private static final long serialVersionUID = -858521070366432018L; @Override public Serializable getObject() { return new ArrayList<String>(prop.getEnumValues().keySet()); } }); break; case Long: field = new SpinnerFieldPanel<Long>("value", label.getDefaultModelObjectAsString(), Long.class, new Model<Long>(NumberUtils.toLong(prop.getValue())), null, null); break; case String: default: field = new AjaxTextFieldPanel("value", PARENT_PATH, new Model<String>(prop.getValue())); break; } field.setReadOnly(!prop.isWritable()); if (prop.isRequired()) { field.addRequiredLabel(); } item.add(field); } }; final AjaxButton userDetails = new IndicatingAjaxButton("userDetails", new Model<String>(getString("userDetails"))) { private static final long serialVersionUID = -4804368561204623354L; @Override protected void onSubmit(final AjaxRequestTarget target, final Form<?> form) { editUserWin.setPageCreator(new ModalWindow.PageCreator() { private static final long serialVersionUID = -7834632442532690940L; @Override public Page createPage() { return new ViewUserModalPage(ApprovalModalPage.this.getPageReference(), editUserWin, userRestClient.read(formTO.getUserId())) { private static final long serialVersionUID = -2819994749866481607L; @Override protected void closeAction(final AjaxRequestTarget target, final Form form) { setResponsePage(ApprovalModalPage.this); } }; } }); editUserWin.show(target); } }; MetaDataRoleAuthorizationStrategy.authorize(userDetails, ENABLE, xmlRolesReader.getAllAllowedRoles("Users", "read")); final AjaxButton submit = new IndicatingAjaxButton(APPLY, new Model<String>(getString(SUBMIT))) { private static final long serialVersionUID = -958724007591692537L; @Override protected void onSubmit(final AjaxRequestTarget target, final Form<?> form) { Map<String, WorkflowFormPropertyTO> props = formTO.getPropertyMap(); for (int i = 0; i < propView.size(); i++) { @SuppressWarnings("unchecked") ListItem<WorkflowFormPropertyTO> item = (ListItem<WorkflowFormPropertyTO>) propView.get(i); String input = ((FieldPanel) item.get("value")).getField().getInput(); if (!props.containsKey(item.getModelObject().getId())) { props.put(item.getModelObject().getId(), new WorkflowFormPropertyTO()); } if (item.getModelObject().isWritable()) { switch (item.getModelObject().getType()) { case Boolean: props.get(item.getModelObject().getId()).setValue(String.valueOf("0".equals(input))); break; case Date: case Enum: case String: case Long: default: props.get(item.getModelObject().getId()).setValue(input); break; } } } formTO.setProperties(props.values()); try { restClient.submitForm(formTO); ((Todo) pageRef.getPage()).setModalResult(true); window.close(target); } catch (SyncopeClientException e) { error(getString(Constants.ERROR) + ": " + e.getMessage()); LOG.error("While submitting form {}", formTO, e); feedbackPanel.refresh(target); } } @Override protected void onError(final AjaxRequestTarget target, final Form<?> form) { feedbackPanel.refresh(target); } }; final AjaxButton cancel = new IndicatingAjaxButton(CANCEL, new ResourceModel(CANCEL)) { private static final long serialVersionUID = -958724007591692537L; @Override protected void onSubmit(final AjaxRequestTarget target, final Form form) { window.close(target); } @Override protected void onError(final AjaxRequestTarget target, final Form form) { // nothing } }; cancel.setDefaultFormProcessing(false); Form form = new Form(FORM); form.add(propView); form.add(userDetails); form.add(submit); form.add(cancel); MetaDataRoleAuthorizationStrategy.authorize(form, ENABLE, xmlRolesReader.getAllAllowedRoles("Approval", SUBMIT)); editUserWin = new ModalWindow("editUserWin"); editUserWin.setCssClassName(ModalWindow.CSS_CLASS_GRAY); editUserWin.setInitialHeight(USER_WIN_HEIGHT); editUserWin.setInitialWidth(USER_WIN_WIDTH); editUserWin.setCookieName("edit-user-modal"); add(editUserWin); add(form); }