List of usage examples for org.apache.wicket.markup.html.form Form setMultiPart
public void setMultiPart(boolean multiPart)
From source file:ca.travelagency.config.CompanyPage.java
License:Apache License
private Form<Void> uploadForm() { Form<Void> form = new Form<Void>(UPLOAD_FORM) { private static final long serialVersionUID = 1L; @Override//w w w . j a v a2 s . c o m protected void onSubmit() { FileUpload fileUpload = fileUploadField.getFileUpload(); if (fileUpload == null) { return; } String code = ApplicationProperties.make().getCode(); File companyLogoFile = UploadUtils.getCompanyLogoFile(code); try { companyLogoFile.createNewFile(); fileUpload.writeTo(companyLogoFile); } catch (Exception e) { throw new RuntimeException("Unable to write logo image", e); } } }; form.setMultiPart(true); form.setMaxSize(Bytes.kilobytes(100)); form.add(new ComponentFeedbackPanel(FEEDBACK, form)); fileUploadField = new FileUploadField(UPLOAD_FIELD, new ListModel<FileUpload>()); form.add(fileUploadField); return form; }
From source file:ch.bd.qv.quiz.panels.AdminPanel.java
License:Apache License
public AdminPanel(String id) { super(id);/* ww w . ja v a2s .c om*/ add(new FeedbackPanel("feedback")); Form form = new Form("form"); form.setMultiPart(true); form.add(fup = new FileUploadField("fileupload", new Model())); fup.setRequired(true); form.add(new AjaxSubmitLink("submit") { @Override protected void onSubmit(AjaxRequestTarget target, Form<?> form) { List<FileUpload> uploads = fup.getConvertedInput(); try { uploadBean.purgeAndUpload(uploads.get(0).getBytes()); } catch (Exception e) { AdminPanel.this.get("feedback").error(Throwables.getStackTraceAsString(e)); } target.add(findParent(AdminPanel.class)); } @Override protected void onError(AjaxRequestTarget target, Form<?> form) { target.add(findParent(AdminPanel.class)); } }); add(form); }
From source file:com.evolveum.midpoint.web.component.prism.show.PagePreviewChanges.java
License:Apache License
private void initLayout() { Form mainForm = new Form("mainForm"); mainForm.setMultiPart(true); add(mainForm);//w ww. ja va 2s. com mainForm.add(new ScenePanel(ID_PRIMARY_DELTAS_SCENE, primaryDeltasModel)); mainForm.add(new ScenePanel(ID_SECONDARY_DELTAS_SCENE, secondaryDeltasModel)); initButtons(mainForm); }
From source file:com.evolveum.midpoint.web.page.admin.resources.content.PageAccount.java
License:Apache License
private void initLayout() { Form mainForm = new Form("mainForm"); mainForm.setMultiPart(true); add(mainForm);//from w ww . j a va 2 s . c om WebMarkupContainer protectedMessage = new WebMarkupContainer(ID_PROTECTED_MESSAGE); protectedMessage.add(new VisibleEnableBehaviour() { @Override public boolean isVisible() { ObjectWrapper wrapper = accountModel.getObject(); return wrapper.isProtectedAccount(); } }); mainForm.add(protectedMessage); PrismObjectPanel userForm = new PrismObjectPanel("account", accountModel, new PackageResourceReference(ImgResources.class, ImgResources.HDD_PRISM), mainForm) { @Override protected IModel<String> createDescription(IModel<ObjectWrapper> model) { return createStringResource("pageAccount.description"); } }; mainForm.add(userForm); initButtons(mainForm); }
From source file:com.evolveum.midpoint.web.page.admin.users.PageUser.java
License:Apache License
private void initLayout() { Form mainForm = new Form(ID_MAIN_FORM); mainForm.setMaxSize(MidPointApplication.USER_PHOTO_MAX_FILE_SIZE); mainForm.setMultiPart(true); add(mainForm);//w w w . ja va 2 s .co m initSummaryInfo(mainForm); PrismObjectPanel userForm = new PrismObjectPanel(ID_USER_FORM, userModel, new PackageResourceReference(ImgResources.class, ImgResources.USER_PRISM), mainForm) { @Override protected IModel<String> createDescription(IModel<ObjectWrapper> model) { return createStringResource("pageUser.description"); } }; mainForm.add(userForm); WebMarkupContainer accounts = new WebMarkupContainer(ID_ACCOUNTS); accounts.setOutputMarkupId(true); mainForm.add(accounts); initAccounts(accounts); WebMarkupContainer assignments = new WebMarkupContainer(ID_ASSIGNMENTS); assignments.setOutputMarkupId(true); mainForm.add(assignments); initAssignments(assignments); WebMarkupContainer tasks = new WebMarkupContainer(ID_TASKS); tasks.setOutputMarkupId(true); mainForm.add(tasks); initTasks(tasks); initButtons(mainForm); initResourceModal(); initAssignableModal(); initConfirmationDialogs(); }
From source file:com.evolveum.midpoint.web.page.admin.workflow.PageWorkItem.java
License:Apache License
private void initLayout() { Form mainForm = new Form("mainForm"); mainForm.setMultiPart(true); add(mainForm);//from ww w. j a v a 2 s . c o m Label requestedBy = new Label("requestedBy", new PropertyModel(requesterModel, "object.asObjectable.name")); mainForm.add(requestedBy); Label requestedByFullName = new Label("requestedByFullName", new PropertyModel(requesterModel, "object.asObjectable.fullName")); mainForm.add(requestedByFullName); Label requestedOn = new Label("requestedOn", new AbstractReadOnlyModel<String>() { @Override public String getObject() { ProcessInstanceDto dto = processInstanceDtoModel.getObject(); if (dto.getProcessInstance().getStartTimestamp() == null) { return ""; } return WebMiscUtil .formatDate(XmlTypeConverter.toDate(dto.getProcessInstance().getStartTimestamp())); } }); mainForm.add(requestedOn); Label workItemCreatedOn = new Label("workItemCreatedOn", new AbstractReadOnlyModel<String>() { @Override public String getObject() { WorkItemDetailedDto dto = workItemDtoModel.getObject(); if (dto.getWorkItem().getMetadata() == null || dto.getWorkItem().getMetadata().getCreateTimestamp() == null) { return ""; } return WebMiscUtil .formatDate(XmlTypeConverter.toDate(dto.getWorkItem().getMetadata().getCreateTimestamp())); } }); mainForm.add(workItemCreatedOn); Label assignee = new Label("assignee", new PropertyModel(workItemDtoModel, WorkItemDto.F_ASSIGNEE)); mainForm.add(assignee); Label candidates = new Label("candidates", new PropertyModel(workItemDtoModel, WorkItemDto.F_CANDIDATES)); mainForm.add(candidates); PrismObjectPanel requestSpecificForm = new PrismObjectPanel("requestSpecificForm", requestSpecificModel, new PackageResourceReference(ImgResources.class, ImgResources.DECISION_PRISM), mainForm) { @Override protected IModel<String> createDisplayName(IModel<ObjectWrapper> model) { return createStringResource("pageWorkItem.requestSpecific.description"); } @Override protected IModel<String> createDescription(IModel<ObjectWrapper> model) { return new Model<>(""); } }; mainForm.add(requestSpecificForm); additionalInfoAccordion = new Accordion(ID_ACCORDION); additionalInfoAccordion.setOutputMarkupId(true); additionalInfoAccordion.setMultipleSelect(true); additionalInfoAccordion.setExpanded(false); mainForm.add(additionalInfoAccordion); PrismObjectPanel requesterForm = new PrismObjectPanel("requesterForm", requesterModel, new PackageResourceReference(ImgResources.class, ImgResources.USER_PRISM), mainForm); requesterForm.add(new VisibleEnableBehaviour() { @Override public boolean isVisible() { return requesterModel != null && !requesterModel.getObject().getObject().isEmpty(); } }); mainForm.add(requesterForm); PrismObjectPanel objectOldForm = new PrismObjectPanel("objectOldForm", objectOldModel, new PackageResourceReference(ImgResources.class, ImgResources.USER_PRISM), mainForm); objectOldForm.add(new VisibleEnableBehaviour() { @Override public boolean isVisible() { return getGeneralChangeApprovalWorkItemContents() != null && getGeneralChangeApprovalWorkItemContents().getObjectOld() != null; } }); mainForm.add(objectOldForm); PrismObjectPanel objectNewForm = new PrismObjectPanel("objectNewForm", objectNewModel, new PackageResourceReference(ImgResources.class, ImgResources.USER_PRISM), mainForm); objectNewForm.add(new VisibleEnableBehaviour() { @Override public boolean isVisible() { return getGeneralChangeApprovalWorkItemContents() != null && getGeneralChangeApprovalWorkItemContents().getObjectNew() != null; } }); mainForm.add(objectNewForm); PrismObjectPanel additionalDataForm = new PrismObjectPanel("additionalDataForm", additionalDataModel, new PackageResourceReference(ImgResources.class, ImgResources.ROLE_PRISM), mainForm); mainForm.add(additionalDataForm); PrismObjectPanel trackingDataForm = new PrismObjectPanel("trackingDataForm", trackingDataModel, new PackageResourceReference(ImgResources.class, ImgResources.TRACKING_PRISM), mainForm) { @Override protected IModel<String> createDisplayName(IModel<ObjectWrapper> model) { return createStringResource("pageWorkItem.trackingData.description"); } @Override protected IModel<String> createDescription(IModel<ObjectWrapper> model) { return new Model(""); } }; mainForm.add(trackingDataForm); AccordionItem deltaInfo = new AccordionItem(ID_DELTA_INFO, new ResourceModel("pageWorkItem.delta")); deltaInfo.setOutputMarkupId(true); additionalInfoAccordion.getBodyContainer().add(deltaInfo); DeltaPanel deltaPanel = new DeltaPanel(ID_DELTA_PANEL, deltaModel); deltaInfo.getBodyContainer().add(deltaPanel); additionalInfoAccordion.getBodyContainer() .add(createObjectAccordionItem(ID_REQUESTER_ACCORDION_INFO, ID_REQUESTER_PANEL, "pageWorkItem.accordionLabel.requester", new PropertyModel(workItemDtoModel, WorkItemDetailedDto.F_REQUESTER), true)); additionalInfoAccordion.getBodyContainer() .add(createObjectAccordionItem(ID_OBJECT_OLD_ACCORDION_INFO, ID_OBJECT_OLD_PANEL, "pageWorkItem.accordionLabel.objectOld", new PropertyModel(workItemDtoModel, WorkItemDetailedDto.F_OBJECT_OLD), true)); additionalInfoAccordion.getBodyContainer() .add(createObjectAccordionItem(ID_OBJECT_NEW_ACCORDION_INFO, ID_OBJECT_NEW_PANEL, "pageWorkItem.accordionLabel.objectNew", new PropertyModel(workItemDtoModel, WorkItemDetailedDto.F_OBJECT_NEW), true)); additionalInfoAccordion.getBodyContainer() .add(createObjectAccordionItem(ID_ADDITIONAL_DATA_ACCORDION_INFO, ID_ADDITIONAL_DATA_PANEL, "pageWorkItem.accordionLabel.additionalData", new PropertyModel(workItemDtoModel, WorkItemDetailedDto.F_RELATED_OBJECT), true)); LOGGER.trace("processInstanceDtoModel = {}, loaded = {}", processInstanceDtoModel, processInstanceDtoModel.isLoaded()); ProcessInstanceDto processInstanceDto = processInstanceDtoModel.getObject(); WfProcessInstanceType processInstance = processInstanceDto.getProcessInstance(); additionalInfoAccordion.getBodyContainer() .add(createAccordionItem(ID_PROCESS_INSTANCE_ACCORDION_INFO, "pageWorkItem.accordionLabel.processInstance", new ProcessInstancePanel(ID_PROCESS_INSTANCE_PANEL, processInstanceDtoModel), true)); initButtons(mainForm); }
From source file:com.servoy.j2db.server.headlessclient.MediaUploadPage.java
License:Open Source License
/** * @param pageMap//from ww w . j a va2s . c o m * @param model * @param dataProviderID */ @SuppressWarnings("nls") public MediaUploadPage(IPageMap pageMap, final RecordItemModel model, final WebDataImgMediaField field, final IApplication application) { super(pageMap); add(new PageContributor(application, "contribution")); mfuf = null; fuf = new SingleFileUpload("panel", application); Form form = new Form("form") { private static final long serialVersionUID = 1L; private boolean close = false; @Override protected void onSubmit() { FileUpload fu = fuf.getFileUpload(); if (fu != null) { // use the wrap model so that form variables also work. IWrapModel wrappedModel = model.wrapOnInheritance(field); wrappedModel.setObject(fu.getBytes()); field.getStylePropertyChanges().setChanged(); model.setValue(field, field.getDataProviderID() + IMediaFieldConstants.FILENAME, fu.getClientFileName()); String contentType = fu.getContentType(); model.setValue(field, field.getDataProviderID() + IMediaFieldConstants.MIMETYPE, contentType); } close = true; } /** * @see org.apache.wicket.Component#renderHead(org.apache.wicket.markup.html.internal.HtmlHeaderContainer) */ @Override public void renderHead(HtmlHeaderContainer container) { super.renderHead(container); if (close) { container.getHeaderResponse().renderOnLoadJavascript("window.opener.triggerAjaxUpdate();"); } } }; form.add(fuf); form.setMultiPart(true); add(form); FeedbackPanel panel = new FeedbackPanel("feedback"); //$NON-NLS-1$ add(panel); add(CSSPackageResource.getHeaderContribution( "/servoy-webclient/templates/" + application.getClientProperty(WEBCONSTANTS.WEBCLIENT_TEMPLATES_DIR) + "/servoy_web_client_default.css")); }
From source file:com.servoy.j2db.server.headlessclient.MediaUploadPage.java
License:Open Source License
@SuppressWarnings({ "nls", "unchecked" }) public MediaUploadPage(IPageMap pageMap, final IMediaUploadCallback callback, boolean multiSelect, final IApplication application) { super(pageMap); add(new PageContributor(application, "contribution")); Form form = new Form("form") { private static final long serialVersionUID = 1L; private boolean close = false; @Override/* w ww .j a v a 2 s .co m*/ protected void onSubmit() { close = true; if (fuf != null) { final FileUpload fu = fuf.getFileUpload(); if (fu != null) { IUploadData ud = new FileUploadData(fu); callback.uploadComplete(new IUploadData[] { ud }); } else { callback.uploadComplete(new IUploadData[0]); } } else if (mfuf != null) { Collection<FileUpload> uploads = mfuf.getModelObject(); if (uploads != null) { IUploadData[] data = new IUploadData[uploads.size()]; int counter = 0; for (FileUpload fileUpload : uploads) { data[counter++] = new FileUploadData(fileUpload); } callback.uploadComplete(data); } else { callback.uploadComplete(new IUploadData[0]); } } callback.onSubmit(); if (fuf != null) { remove(fuf); } else if (mfuf != null) { remove(mfuf); } add(new Label("panel", new Model<String>(application.getI18NMessage("servoy.filechooser.upload.finished")))); } @Override public void renderHead(HtmlHeaderContainer container) { super.renderHead(container); if (close) { container.getHeaderResponse().renderOnLoadJavascript("window.parent.triggerAjaxUpdate();"); } } @Override protected boolean handleMultiPart() { // Change the request to a multipart web request that is able to work with multiple file uploads for the same field nmae // so parameters are parsed out correctly as well try { final WebRequest req = ((WebRequest) getRequest()); MultipartServletWebRequest multipart; try { Settings settings = Settings.getInstance(); File fileUploadDir = null; String uploadDir = settings.getProperty("servoy.ng_web_client.temp.uploadir"); if (uploadDir != null) { fileUploadDir = new File(uploadDir); if (!fileUploadDir.exists() && !fileUploadDir.mkdirs()) { fileUploadDir = null; Debug.error( "Couldn't use the property 'servoy.ng_web_client.temp.uploadir' value: '" + uploadDir + "', directory could not be created or doesn't exists"); } } int tempFileThreshold = Utils.getAsInteger( settings.getProperty("servoy.ng_web_client.tempfile.threshold", "50"), false) * 1000; multipart = new MultipartServletWebRequest(req.getHttpServletRequest(), getMaxSize(), new DiskFileItemFactory(tempFileThreshold, fileUploadDir) { private final HashSet<String> fieldNames = new HashSet<String>(); @Override public FileItem createItem(String fieldName, String contentType, boolean isFormField, String fileName) { String adjustedFieldName = fieldName; int i = 1; while (fieldNames.contains(adjustedFieldName)) { adjustedFieldName = fieldName + "_additionalFile_" + (i++); } String timestampStr = req .getParameter("last_modified_" + fieldName + "_" + fileName); long timestamp = System.currentTimeMillis(); if (timestampStr != null) { try { timestamp = Long.parseLong(timestampStr); } catch (NumberFormatException ex) { timestamp = System.currentTimeMillis(); } } fieldNames.add(adjustedFieldName); return new ServoyDiskFileItem(adjustedFieldName, contentType, isFormField, fileName, getSizeThreshold(), getRepository(), timestamp); } }); } catch (FileUploadException e) { throw new WicketRuntimeException(e); } multipart.setRequestParameters(req.getRequestParameters()); getRequestCycle().setRequest(multipart); return true; } catch (WicketRuntimeException wre) { if (wre.getCause() == null || !(wre.getCause() instanceof FileUploadException)) { throw wre; } FileUploadException e = (FileUploadException) wre.getCause(); // Create model with exception and maximum size values final Map<String, Object> model = new HashMap<String, Object>(); model.put("exception", e); model.put("maxSize", getMaxSize()); onFileUploadException((FileUploadException) wre.getCause(), model); // don't process the form if there is a FileUploadException return false; } } }; if (multiSelect) { fuf = null; IModel<Collection<FileUpload>> model = new Model(new ArrayList()); mfuf = new MultiFileUpload("panel", model, application); form.add(mfuf); } else { mfuf = null; fuf = new SingleFileUpload("panel", application); form.add(fuf); } form.add(new Label("uploadtitle", new Model<String>(application.getI18NMessage("servoy.filechooser.upload.title")))); form.setMultiPart(true); add(form); FeedbackPanel panel = new FeedbackPanel("feedback"); add(panel); add(CSSPackageResource.getHeaderContribution( "/servoy-webclient/templates/" + application.getClientProperty(WEBCONSTANTS.WEBCLIENT_TEMPLATES_DIR) + "/servoy_web_client_default.css")); }
From source file:com.tysanclan.site.projectewok.pages.member.CreateGamePetitionPage.java
License:Open Source License
public CreateGamePetitionPage() { super("Create Game Petition"); add(new Label("count", new Model<Integer>(gameService.getRequiredPetitionSignatures()))); Form<GamePetition> form = new Form<GamePetition>("petitionForm") { private static final long serialVersionUID = 1L; /**// www.j a v a 2 s . c o m * @see org.apache.wicket.markup.html.form.Form#onSubmit() */ @SuppressWarnings("unchecked") @Override protected void onSubmit() { FileUploadField iconField = (FileUploadField) get("icon"); FileUpload upload = iconField.getFileUpload(); TextField<String> nameField = (TextField<String>) get("name"); DropDownChoice<Realm> realmChoice = (DropDownChoice<Realm>) get("realm"); TextField<String> realmField = (TextField<String>) get("newRealm"); String name = nameField.getModelObject(); Realm realm = realmChoice.getModelObject(); String realmName = realmField.getModelObject(); GamePetition p = null; if (realm == null) { p = gameService.createPetition(getUser(), name, realmName, upload.getBytes()); } else { p = gameService.createPetition(getUser(), name, realm, upload.getBytes()); } if (p != null) { setResponsePage(new SignGamePetitionsPage()); } else { error("Invalid image size, did you upload a valid GIF, JPEG or PNG with dimensions at least 48x48 and at most 64x64?"); } } }; form.setMultiPart(true); add(form); form.add(new TextField<String>("name", new Model<String>("")).setRequired(true)); form.add(new FileUploadField("icon").setRequired(true)); List<Realm> realms = realmService.getRealms(); DropDownChoice<Realm> realmChoice = new DropDownChoice<Realm>("realm", ModelMaker.wrap((Realm) null), ModelMaker.wrapChoices(realms)); realmChoice.setNullValid(true); realmChoice.setVisible(realms.size() > 0); realmChoice.add(new AjaxFormComponentUpdatingBehavior("onchange") { private static final long serialVersionUID = 1L; @SuppressWarnings("unchecked") @Override protected void onUpdate(AjaxRequestTarget target) { DropDownChoice<Realm> rc = (DropDownChoice<Realm>) getComponent(); Component newRealmField = rc.getParent().get("newRealm"); newRealmField.setVisible(rc.getModelObject() == null); if (target != null) { target.add(newRealmField); } } }); realmChoice.setChoiceRenderer(new IChoiceRenderer<Realm>() { private static final long serialVersionUID = 1L; @Override public Object getDisplayValue(Realm object) { return object.getName(); } @Override public String getIdValue(Realm object, int index) { return object == null ? "null" : object.getId().toString(); } }); form.add(new TextField<String>("newRealm", new Model<String>("")).setOutputMarkupId(true) .setOutputMarkupPlaceholderTag(true)); form.add(realmChoice); }
From source file:com.tysanclan.site.projectewok.pages.member.ProposeAchievementPage.java
License:Open Source License
public ProposeAchievementPage(int tabIndex) { super("Propose Achievement"); this.tabIndex = tabIndex; add(new ListView<AchievementProposal>("proposals", ModelMaker.wrap(achievementProposalDAO.findAll())) { private static final long serialVersionUID = 1L; @Override/*w ww . j a v a2 s . com*/ protected void populateItem(final ListItem<AchievementProposal> item) { AchievementProposal proposal = item.getModelObject(); item.add(new Image("icon", new StoredImageResource(proposal.getIcon().getImage()))); item.add(new Label("name", proposal.getName())); item.add(new Label("description", proposal.getDescription()).setEscapeModelStrings(false)); item.add(new Label("game", proposal.getGame() != null ? proposal.getGame().getName() : "-")); item.add(new Label("group", proposal.getGroup() != null ? proposal.getGroup().getName() : "-")); } }); List<AchievementIcon> icons = achievementService.getAvailableIcons(getUser()); add(getIconListview("icons", icons, new IconClickResponder() { private static final long serialVersionUID = 1L; @Override public void onClick(AchievementIcon icon) { setResponsePage(new ProposeAchievementPage2(icon)); } })); add(new WebMarkupContainer("noIcons").setVisible(icons.isEmpty())); add(getIconListview("approved", getApprovedIcons(getUser()), null)); add(getIconListview("pending", getPendingIcons(getUser()), null)); add(getIconListview("rejected", getRejectedIcons(getUser()), new IconClickResponder() { private static final long serialVersionUID = 1L; @Override public void onClick(AchievementIcon icon) { achievementService.deleteIcon(getUser(), icon); setResponsePage(new ProposeAchievementPage(2)); } })); final FileUploadField uploadField = new FileUploadField("file", new ListModel<FileUpload>()); uploadField.setRequired(true); final TextField<String> purposeField = new TextField<String>("purpose", new Model<String>("")); purposeField.setRequired(true); final CheckBox privateIconBox = new CheckBox("private", new Model<Boolean>(true)); Form<AchievementIcon> uploadForm = new Form<AchievementIcon>("uploadIcon") { private static final long serialVersionUID = 1L; @Override protected void onSubmit() { List<FileUpload> uploads = uploadField.getModelObject(); String purpose = purposeField.getModelObject(); Boolean privateIcon = privateIconBox.getModelObject(); if (uploads != null && !uploads.isEmpty()) { FileUpload upload = uploads.get(0); AchievementIcon icon = achievementService.uploadAchievementIcon(getUser(), upload.getBytes(), purpose, privateIcon); if (icon != null) { setResponsePage(new ProposeAchievementPage(2)); } else { error("Invalid image type, or not a 48x48 pixel image"); } } else { error("No valid file uploaded"); } } }; uploadForm.setMultiPart(true); uploadForm.add(uploadField); uploadForm.add(purposeField); uploadForm.add(privateIconBox); add(uploadForm); }