Page tree
Skip to end of metadata
Go to start of metadata

DamUploadFieldDefinition renders a field for uploading files into a Magnolia workspace. This field is used by the Assets app for uploading assets into the dam workspace. It extends the basic upload field field and adds the following enhancements to the completed view:

  • The uploaded file is mapped to a media type based on its MIME type.
  • The default field labels are overridden with Media type specific labels such as Upload new image.
  • Actions for editing images in the media editor.
  • Actions for previewing images.
  • Thumbnail preview.


Here's the completed view for an uploaded image.

Here's the completed view for an uploaded video.


DAM upload field properties

Simple DAM upload field configuration:

    - name: tabUpload
      label: Upload
        - name: upload
          label: Upload asset
          binaryNodeName: jcr:content
          editFileName: true

Node name
















Upload asset



You can use common field properties and the properties in the tables below in a basic upload field definition:


<field name>


Name of the field.


optional, default is .* (all types)

Regular expression to filter allowed files by their MIME type. For example, to allow only Excel files set the value to application.*(excel|xls). To allow images only, set the value to image.*. For more information about the supported pattern, see Pattern . For digital asset management MIME types see MediaType.


optional, default is binaryNodeName

Name of the subnode that will contain the file binary and related information.


optional, default is false

When set to true, the file extension displayed in the Format field is editable.


optional, default is false

When set to true, the file name displayed in the Name field is editable.


optional, default is 2^63 (9.2 EB)

Maximum file size in bytes.

Caption properties. Values are typically retrieved from a message bundle.

<field name>


Name of the field

Empty view 


optional, default is Select a file to upload...

Text displayed as tooltip on the upload button.


optional, default is or <em>drag a file into this area</em> to upload it

Text displayed as label for dropping invitation.


optional, default is You have aborted the upload of your file

Text displayed in the warning note.

In progress view 


optional, default is Uploading file {0} ...

Text displayed as title.


optional, default is {0} of {1} uploaded

Text displayed as file upload ratio.

Completed view 


optional, default is File detail

Text displayed as file detail header.


optional, default is Name

Text displayed as file name label.


optional, default is Size

Text displayed as file size label.


optional, default is Format

Text displayed as file format label.


optional, default is Source

Text displayed as file source label.


optional, default is Upload a new File...

Text displayed as tooltip on the delete icon.


optional, default is Upload a new File...

Text displayed on the upload button.


optional, default is Your file has been uploaded successfully

Text displayed in the success note.


optional, default is An Error occurred while uploading your file

Text displayed in the error note.


optional, default is A file size limitation

Text displayed in the warning when file size > maxUploadSize


optional, default is An unsupported upload file type

Text displayed in the warning when file type not in allowedMimeTypePattern


optional, default is A user action

Text displayed in the warning when the user interrupts the upload.

Caption properties specific to the DAM upload field.

<field name>


Name of the field


optional, default is View in lightbox...

Text displayed as tooltip when you hover over the preview action icon.


optional, default is Edit image...

Text displayed as tooltip when you hover over the edit action icon.

When using the basic upload field in a composite field use the DelegatingCompositeFieldTransformer. The other transformer classes do not work.


It's possible to configure the DamUploadFieldDefinition in dialogs or other apps, but keep in mind the file will placed into the workspace for which the field has been configured. For example, if you use the field in a dialog for a component template, then that file, when uploaded using the field, would be stored in the website workspace not the dam workspace. This is the same behavior as all other fields. It's best practice, whenever possible, to keep your assets in the DAM and link to them using a link field.

  • No labels


  1. How i can upload my file from the website into Magnolia CMS JCR workspace ?Can you show me the way to do that with Java

  2. This field is meant to use within a form for instance within a dialog. To make this happen, a bunch of Java classes is involved (wink). To store a file - just use Assets app. Or create a dialog to store the file as asset on the dam workspace or as binary file on a workspace of your choice.

    Who should be able to store files? Magnolia editors, authors, visitors, public users?

    Once again - dear Dương Hoàng Giang - you should describe your use case much more precise.

    1. Thanks for your advice. In my case I want to public user can upload file (.doc, .pdf,..) in public instance and authors can manage it in Magnolia CMS how i can do that ? Do you understand me ?