Uploading .CR3 files to AEM Assets fails due to MIME type configuration
Uploading Canon RAW (.CR3) files to Adobe Experience Manager (AEM) Assets fails with a restriction or invalid format error even after adding expected MIME types to upload restrictions. This happens because the upload client performs a case-sensitive MIME type check based on what the browser sends, and the backend requires a correctly formatted global MIME mapping. To fix this, add all required case-sensitive CR3 MIME types to upload restrictions and configure the global MIME mapping using whitespace instead of an equals sign.
Description description
Environment
-
Product: AEM as a Cloud Service - Assets
-
Constraints:
- Observed on Chrome running on Windows
- Configuration is environment-specific
- Changes don’t automatically propagate across environments
Issue / Symptoms
- Uploading
.CR3files results in a restriction or invalid format error - The browser reports the file type as
image/CR3(uppercase subtype) - The upload client performs a case-sensitive MIME type match
- Backend logs show a null or undetectable MIME type during
initiateUpload
Resolution resolution
To fix the issue, follow these steps:
-
Log in to each affected AEM author environment such as development or production.
-
Go to Tools
>Assets>Assets Configurations>Upload Restrictions. -
Add the following MIME types to the allowed list:
image/x-canon-cr3image/cr3image/CR3
-
Save the changes.
-
Update the global MIME mapping in the OSGi configuration for
org.apache.sling.commons.mime.internal.MimeTypeServiceImplusing whitespace instead of an equals sign:image/x-canon-cr3 cr3 -
Deploy the configuration through your code repository and Cloud Manager pipeline.
-
Repeat these steps in every environment where
.CR3uploads are required. -
Verify that
.CR3files upload successfully without restriction errors.
Notes
- Upload restrictions rely on the MIME type sent by the browser, which is case-sensitive and platform-dependent.
- Global MIME mapping affects backend processing only.
- UI-based configuration changes can be overwritten during redeployments.
- Each environment requires separate configuration.