AEM Managed Services : activation de l’ingestion SVG dans la gestion des ressources numériques via la configuration OSGi
Si les fichiers SVG sont rejetés lorsque vous les chargez dans la gestion des ressources numériques sur AEM Managed Services, mettez à jour vos configurations OSGi de type MIME et de restriction de chargement des ressources pour autoriser le type MIME image/svg+xml. Conservez la modification dans le code de votre projet afin qu’il survive aux déploiements futurs.
Description description
Environnement
Adobe Experience Manager (AEM) (toutes les versions, Managed Services)
Problème/Symptômes
Vous ne pouvez pas charger de fichiers SVG dans la gestion des ressources numériques. Les tentatives de chargement de ressources SVG peuvent entraîner des erreurs ou le rejet des ressources en fonction du type MIME actuel et des configurations des restrictions de chargement. Aucun message d’erreur spécifique ne s’affiche, mais les fichiers SVG ne sont pas acceptés pour l’ingestion.
- Les fichiers SVG ne sont pas répertoriés comme types de ressources autorisés.
- L’interface de chargement peut rejeter silencieusement des fichiers SVG ou afficher un message générique de type de fichier non pris en charge.
Documentation de référence : Configuration de la prise en charge de SVG dans AEM
Résolution resolution
Pour résoudre ce problème, procédez comme suit.
-
Accédez à la console web OSGi à l’adresse
/system/console/configMgrsur une instance de développement ou d’évaluation. -
Recherchez les configurations Service de type MIME Apache Sling Commons (
org.apache.sling.commons.mime.internal.MimeTypeServiceImpl) et Restriction de chargement des ressources de gestion des ressources numériques Day CQ (com.day.cq.dam.core.impl.assetupload.DamUploadAssetFilter) . -
Dans le service de type MIME Apache Sling Commons, ajoutez
image/svg+xml svgà la propriétémime.types. -
Si les restrictions de chargement sont activées, ajoutez des
image/svg\+xmlà la propriétéallowedAssetMimesdans la boîte de dialogue Restriction de chargement des ressources de gestion des ressources numériques Day CQ. -
Enregistrez les modifications et vérifiez que les fichiers SVG peuvent être chargés.
-
Ne vous fiez pas aux modifications manuelles de la console web en tant que source de vérité à long terme pour la production. Conservez la configuration dans votre base de code afin qu’elle reste reproductible sur les déploiements et environnements.
-
Conservez la configuration OSGi dans les chemins contrôlés par projet, tels que :
/apps/<project>/config/org.apache.sling.commons.mime.internal.MimeTypeServiceImpl.cfg.json/apps/<project>/config/com.day.cq.dam.core.impl.assetupload.DamUploadAssetFilter.cfg.json
-
Utilisez une configuration telle que celle-ci pour la prise en charge de SVG :
org.apache.sling.commons.mime.internal.MimeTypeServiceImpl.cfg.jsoncode language-none { "mime.types": [ "image/svg+xml svg", "image/png png", "image/jpeg jpg jpeg" ] }com.day.cq.dam.core.impl.assetupload.DamUploadAssetFilter.cfg.jsoncode language-none { "allowAllMime": false, "allowedAssetMimes": [ "image/svg\+xml", "image/jpeg", "image/png" ] } -
Si nécessaire, utilisez des dossiers spécifiques au mode d’exécution, tels que
/apps/<project>/config.author/ou/apps/<project>/config.publish/. -
Déployez ces fichiers de configuration à l’aide de votre processus de déploiement Managed Services standard.
-
Après le déploiement, vérifiez la fonctionnalité de chargement de SVG dans l’environnement cible.