2013-02-19 15 views
9

Wir haben einen Tridion-Anwendungsfall für kuratierten Inhalt, in dem wir Multimedia-Komponenten für Bilder erstellen, die mit unseren Inhalten verknüpft sind und auf externe Ressourcentypen anstelle von hochgeladenen Ressourcentypen verweisen.Wie können wir Multimedia-Komponenten mit externen Ressourcentypen speichern, wenn die URL nicht mit einer Dateierweiterung endet?

Eines der Probleme, die wir mit diesem Anwendungsfall haben, ist, dass trotz der expliziten Einstellung der Multimedia-Typ für die Ressource, wenn die URL des Bildes entweder eine Abfrage-Zeichenfolge enthält: http://cdn.hw.net/UploadService/1c8b7f28-bb12-4e02-b888-388fdff5836e.jpg?w=160&h=120&mode=crop&404=default oder verwendet eine 'freundliche URL' : http://www.somewhere.com/images/myimage/ Wenn wir die Komponente speichern, zeigt Tridion barfs ähnliche Fehlermeldungen an: 'Ungültiger Wert für Eigenschaft' Dateiname '. Unerwartete Dateierweiterung: jpg? W = 160 & h = 120 & mode = zuschneiden & 404 = Standard. Erwartet: jpg, jpeg, jpe.

Bis jetzt ist die einzige Möglichkeit, die wir herausgefunden haben, um dieses Problem möglicherweise zu umgehen, etwas hacky zu tun, wie das Hinzufügen eines zusätzlichen Abfragezeichenfolgenparameters an das Ende von die URLs, die mit der erwarteten Dateierweiterung enden: http://cdn.hw.net/UploadService/1c8b7f28-bb12-4e02-b888-388fdff5836e.jpg?w=160&h=120&mode=crop&404=default&ext=.jpg Offensichtlich ist dies nicht die beste Lösung und funktioniert möglicherweise nicht für einige Bilder, wenn die Site, von der sie geliefert werden, die angeforderte URL strikt validiert.

Hat jemand irgendwelche Ideen, wie wir dieses Problem umgehen können?

Antwort

9

Leider kann ich mir keine einfache Lösung vorstellen, da Tridion den MIME-Typ durch Überprüfung der Dateierweiterung "erkennt".

Sie könnten es vielleicht beim Speichern hinzufügen und beim Lesen (über Event System) entfernen? Auf jeden Fall eine lohnenswerte Erweiterung Anfrage, mein Wissen wird dieses Verhalten nicht für die bald kommende Tridion 2013 ... Siehe Kommentar unten geändert wurde, wurde geändert für 2013

+3

Es ist geändert, es wird eine Lösung im Jahr 2013 geben –

+0

Gute Idee über die Verwendung des Ereignissystems, um dies hinter der Szene zu behandeln und gut über die direkte Unterstützung in Tridion 2013 zu wissen. –

+0

Gibt es eine Lösung im Jahr 2013 Wir verwenden 2013 sp1 aber immer noch das gleiche Problem – rdhaundiyal

8

+1 für Nuno Antwort. Wenn Sie feststellen, dass der Titel Ihrer Frage für Multimedia-Komponenten spezifisch ist, sollten Sie einen anderen Ansatz in Betracht ziehen, bei dem normale Komponenten und keine Multimedia-Komponenten verwendet werden. Sie können ein normales Komponentenschema erstellen, das so etwas wie "Externes Image" genannt wird und ein Externes URL-Feld zum Speichern Ihrer Extendless-URL enthält.

Inhaltsautoren werden diese Bilder dann über normale Komponentenverknüpfungsmechanismen in die Tridion GUI einbinden.

Sie erhalten dann eine individuelle Linkresolver TBB müssen, die für alle Tridion Anker-Tags parsen <a tridion:href="tcm:x-y-z"> und für jeden, sie mit einem <img src=...> Tag suchen, um den Ausgangspunkt (über Regex) ersetzen, wo der src Weg aus dieser verknüpften Komponente kommen würde .

Für ein Beispiel für einen ähnlichen Ansatz, aber mit Videos und Beispielcode für einen benutzerdefinierten Link Resolver TBB sehen Sie sich den Code in dem folgenden Beitrag: http://www.tridiondeveloper.com/integration-sdl-tridion-jw-media-player.

+0

Wirklich gute Idee. So wie es jetzt aussieht, versuchen wir, die gleichen Schemata für die Erstellung von kuratierten Inhalten zu verwenden, die wir für unseren ursprünglichen Inhalt verwenden (der hochgeladene Multimedia-Komponenten verwendet), da viele unserer Komponenten-/Seitenvorlagen "nur funktionieren", wenn wir das tun. Obwohl ich denke, dass wir kurzfristig tun werden, wie Nuno es vorschlägt, habe ich die Entscheidung, Bilder für diesen Inhalt genau so zu behandeln, wie wir es für andere Inhalte tun, neu durchdacht und bietet auch eine Lösung für ein bevorstehendes Projekt (ironisch auf Videos bezogen.) –