Problem in dynamischen Menüs in Tridion 2011

8

Wir haben eine Anwendung, deren Menüs dynamisch durch die Veröffentlichung einer dynamischen Komponentenpräsentation generiert werden. Eine menu.xml wird von einer Komponentenvorlage basierend auf den Strukturgruppen ausgegeben und diese Komponentenvorlage wird durch das Ereignissystem ausgelöst, das wann immer veröffentlicht wird Eine Strukturgruppe wird veröffentlicht.

Dieses Setup funktionierte bis zum Upgrade von Tridion 2011 von Tridion 2009. Aber seit dem Upgrade werden die Menüs nicht dynamisch veröffentlicht und erfordern eine erneute Veröffentlichung der Menükomponentenvorlage jedes Mal, wenn eine Änderung in der Strukturgruppe. Wir haben das Event-System überprüft und dort ist alles in Ordnung. Außerdem löst diese erneute Veröffentlichung der Menükomponentenvorlage Probleme in einigen anderen Seitenmenüs aus.

Wenn wir ein Debugging durchführen (wir haben die Komponentenvorlage dazu gebracht, die pageURI zu schreiben, an der es zu jedem Zeitpunkt arbeitet), stellen wir fest, dass der Seiten-URI, der ausgegeben wird, falsch ist.

Im Folgenden sind die Schritte und Schlussfolgerungen aufgeführt:

  • Alle fehlerhaften Seiten wurden überprüft. Das DCP-Tag hat die richtigen Attribute, die im JSP-Code

  • festgelegt sind
  • Zusätzliche TRACE-Anweisungen wurden der Tridion-Tag-Bibliothek hinzugefügt, dies bestätigte Folgendes:

  • Die XSLT wurde korrekt aus dem Dateisystem abgerufen
  • Das zwischengespeicherte Menü wurde korrekt aus dem Cache abgerufen
  • Die XSLT wurde korrekt mit den bereitgestellten Variablen

  • transformiert
  • Durch das Schreiben der XSLT-Attribute in den HTML-Code sehen wir, dass dem XSLT-Prozessor falsche Parameter zur Verfügung gestellt werden.

Ich kann also sicher feststellen, dass das Problem für das folgende Ereignis isoliert wurde; Der XSL-Prozessor wird mit einer falschen Seiten-ID aufgerufen. Die wahrscheinlichste Ursache ist auf Gleichzeitigkeitsprobleme im Dynamic Component Presentation (DCP) -Java-Code zurückzuführen, bei dem das DCP schwärmt und verwirrt, welche Seite das aktuelle Objekt verwendet.

Und wenn das der Fall ist, was kann getan werden, um es zu korrigieren?

Jede Information würde helfen. Vielen Dank im Voraus!

Grüße,

Keirthana T S

Aktualisierung am 22. Januar 2013:

Bei mehr Debugging finden wir dieses Problem auf der Präsentationsseite (unserem Präsentationsserver) wieder und das Ereignissystem hat nichts mit den falschen Menüs zu tun, die auf der Seite erscheinen.

Das heißt, wenn wir eine von Tridion veröffentlichte jsp-Seite anzeigen, haben wir den richtigen Seiten-URI für das oberste Menü, das linke Menü und die Breadcrumbs, die wir haben:

%Vor%

Wenn wir jedoch die Quelle der Webseite betrachten, stellen wir fest, dass die Seiten-URIs (wir haben die Seite URI zur HTML-Seite ausgeschrieben) wie unten beschrieben versaut sind: Für

%Vor%

was den Breadcrumb erzeugt, erhalten wir einen anderen PageURI anstelle des richtigen.

    
Keirthana 15.01.2013, 07:30
quelle

1 Antwort

3

Einige Published-Related-Legacy-Ereignisse (VB-Ereignisse) funktionieren mit Tridion 2011 nicht sofort. Hier ist ein Legacy-Ereignisadapter verfügbar: Ссылка .

    
Quirijn 15.01.2013 08:11
quelle