Beheben von Fehlern beim Hochladen von Assets und bei Metadaten, die durch nicht unterstützte Zeichen in AEM-Dateinamen verursacht wurden

AEM Assets erzwingt eine strikte Validierung von Asset- und Ordnernamen, sodass Uploads, Metadatenaktualisierungen, Veröffentlichungsaktionen und API-Antworten fehlschlagen, wenn ein Dateiname ein nicht unterstütztes Zeichen wie *, /, :, #, %, & oder {} enthält. Die AEM-Benutzeroberfläche blockiert diese Zeichen vollständig, während Massenimporte und API-Aufnahme sie im Hintergrund bereinigen oder URL-codieren und nachgelagerte Systeme wie Dynamic Media oder die Assets-API fehlerhafte Pfade zurückgeben. Die Ursache dafür ist, dass AEM, das zugrunde liegende JCR-Repository und verbundene Systeme diese Zeichen nicht sicher speichern oder verarbeiten können. Das Umbenennen der betroffenen Assets, um nur zulässige Zeichen zu verwenden, und das erneute Aufnehmen dieser Zeichen stellt Uploads, Metadatenbearbeitungen, Veröffentlichungen und saubere API-Pfade wieder her.

Beschreibung description

Umgebungen:

  • Adobe Experience Manager as a Cloud Service
  • Adobe Experience Manager Managed Services
  • Adobe Experience Manager 6.5 (On-Premise)
  • AEM Assets, das Massenimport-Tool und die Assets-API
  • Dynamic Media (Scene7) und Asset Share Commons

Problem/Symptome:

  • Der Upload der AEM-Benutzeroberfläche schlägt mit der fehl: "*/:[ `]` |#%{}?& sind im Dateinamen nicht zulässig“.
  • Veröffentlichung verwalten gibt zurück Ausgewählte Ressourcen sind ungültig wenn ein Dateiname # enthält.
  • Metadaten von Assets, deren Dateinamen & oder andere ungültige Zeichen enthalten, können nicht aktualisiert werden.
  • Asset-Beziehungen schlagen mit Beziehung konnte nicht aktualisiert, da in Asset-Namen Sonderzeichen verwendet werden.
  • Das Massenimport- oder S3-Import-Tool benennt Assets um, indem es Escape-Zeichen verwendet, z. B. ein Apostroph in %27 oder % in %25.
  • Die Assets-API gibt beschädigte Pfade zurück, in denen ein nicht unterstütztes Zeichen zu ? decodiert wird, z. B. ein hochgestelltes Zeichen und das Zeichen ?.

Grundursache:

AEM, das zugrunde liegende JCR-Repository und nachgelagerte Systeme wie Dynamic Media und die Assets-API können Asset-Namen, die bestimmte Zeichen enthalten, nicht sicher speichern oder verarbeiten. Die AEM-Benutzeroberfläche erzwingt die Client-seitige Validierung, während der Massenimport und die API-Aufnahme JCR-Bereinigungs- und URL-Kodierungsregeln anwenden. Nicht unterstützte Zeichen führen zu Aufnahmefehlern, Fehlern bei der Aktualisierung von Metadaten, Veröffentlichungsproblemen und fehlerhaften API-Antworten.

Wie kann ich bestätigen

  1. Überprüfen Sie den Dateinamen anhand der Liste der verbotenen Zeichen für Ihre AEM-Variante. Die Fehlermeldung der Benutzeroberfläche zeigt die ungültigen Zeichen an: * / : [ \ ] | # % { } ? & ;= für AEM as a Cloud Service und derselbe Satz für AEM 6.5.
  2. Ermitteln Sie, wie das Asset aufgenommen wurde: manueller UI-Upload, S3-Import, Bulk-Import-Tool, Package Manager oder API. Manuelle Uploads schlagen bei ungültigen Zeichen sofort fehl, S3- und Massenimporte bereinigen sie im Hintergrund und Package Manager umgeht die Validierung.

Lösung resolution

Führen Sie zur Behebung des Problems folgende Schritte aus:

  1. Benennen Sie das Asset um, um nicht unterstützte Zeichen zu entfernen. Wählen Sie in der AEM-Benutzeroberfläche das Asset aus, öffnen Sie Eigenschaften und benennen Sie es um oder laden Sie das Asset erneut mit einem bereinigten Dateinamen hoch, der nur zulässige Zeichen verwendet. Wiederholen Sie die fehlgeschlagene Aktion, unabhängig davon, ob es sich um die Aktualisierung, Veröffentlichung oder Beziehung der Metadaten handelt.
  2. Bei Massenproblemen, die Hunderte oder Tausende von Assets betreffen, sollten Sie eine systematische Umbenennung anwenden. Definieren Sie eine bereinigte Namenskonvention - ersetzen Sie & durch „and“, entfernen Sie # und ersetzen Sie Leerzeichen durch Bindestriche - und nehmen Sie dann entweder die korrigierten Dateien erneut in AEM auf oder führen Sie ein Automatisierungsskript im Quellsystem oder im DAM-Upstream aus, um Namen vor dem Hochladen zu bereinigen. Suchen Sie nach den zuvor ungültigen Assets und bestätigen Sie die aktualisierten Namen.
  3. Überprüfen Sie nachgelagerte Integrationen. Bestätigen Sie, dass die bereinigten Namen Probleme mit Asset Share Commons-Miniaturansichten und -Downloads lösen, Assets-API-Pfade, die nicht mehr angezeigt werden? -Zeichen sowie Dynamic Media-Upload- und -Such-Workflows bereit. Testen der Suche, der API-Aufrufe und der Veröffentlichungsflüsse.
  4. Bestätigen Sie die Fehlerbehebung. Laden Sie das Asset mit dem bereinigten Dateinamen erneut hoch und stellen Sie sicher, dass es ohne Validierungswarnung hochgeladen wird, dass die Metadaten gespeichert werden, dass die Funktion Veröffentlichung verwalten ohne den Fehler Ausgewählte Ressourcen sind ungültig ausgeführt wird und dass die Assets-API einen Pfad ohne zurückgibt. Zeichen.

Wenn das Problem weiterhin besteht

Wenden Sie sich an den Adobe-Support, wenn Uploads, Metadatenbearbeitungen oder Veröffentlichungen nach der Bereinigung der Dateinamen immer noch fehlschlagen, wenn API-Antworten eine falsche Pfadformatierung für Dateinamen zeigen, die nur zulässige Zeichen enthalten, oder wenn sich das Bulk Importer-Tool über Umgebungen hinweg inkonsistent verhält. Geben Sie die genauen Dateinamen, die Upload-Methode, die Umgebungs-URLs, die Fehlermeldungen und Screenshots an.

Verwandtes Lesen

recommendation-more-help
experience-cloud-kcs-help-kbarticles