小编Kei*_*ana的帖子

无法在SDL Tridion中获取呈现的内容错误

我想知道在SDL Tridion中可能出现"无法获取呈现内容"错误的情况.我们使用VBScript进行模板化,我在事件日志中列出了下面列出的一些场景.但我无法做出它的头或尾.

场景1:无法获取页面的渲染内容(tcm:48-215280-64).

Error 5 occurred while rendering the Component Presentation (SMS gruppe:Artikkel): 
Invalid procedure call or argument: 'RemoveChild' (source:
        .RemoveChild .selectSingleNode("tcm).
Run Code Online (Sandbox Code Playgroud)

场景2:

Unable to get rendered content of Component (tcm:57-215271).
No data found. [ETA_ITEMS, U]
Cannot insert the value NULL into column 'ITEM_ID', table 'Tridion_cm_2011.dbo.ITEM_ASSOCIATIONS'; column does not allow nulls. INSERT fails.
The statement has been terminated.
Run Code Online (Sandbox Code Playgroud)

场景3:

Unable to get rendered content of Page (tcm:52-213774-64).
Error 1017 occurred while rendering the Page: Expected 'Then' (source:
   If Rendermode() != …
Run Code Online (Sandbox Code Playgroud)

tridion tridion-content-delivery tridion-2011

10
推荐指数
1
解决办法
493
查看次数

使用XSLT和C#在Tridion中学习模板的来源

我正在开发一个项目,该项目要求使用XSLT编写Tridion组件模板,并使用C#编写页面模板.我知道XSLT的基础知识,我对C#完全不熟悉.

任何人都可以指导我学习XSLT和C#templating for Tridion 2011的任何来源.如果可以的话,这会有很大的帮助.提前致谢!

如果有更好的方法来进行模板化,欢迎提出建议.我们可以看到我们的客户是否适应这种情况.

此致,Keirthana

c# xslt templates tridion tridion-2011

9
推荐指数
2
解决办法
1160
查看次数

2011年Tridion动态菜单中的问题

我们有一个应用程序,它通过发布动态组件表示动态生成菜单.menu.xml由基于Structure组的组件模板写出,这个组件模板通过事件系统触发,每当结构组发布时发表.

这个设置工作正常,直到Tridion 2011从Tridion 2009升级.但是自升级以来,菜单不会动态发布,并且每次结构组发生更改时都需要重新发布菜单组件模板.我们检查了事件系统,一切都很好.此外,这种菜单组件模板的重新发布会触发一些其他页面菜单中的问题.

在进行一些调试时(我们使组件模板写出了它正在处理的pageURI),我们发现正在写出的页面URI是错误的.

以下是采取的步骤和得出的结论:

  • 所有错误的页面都已经过检查; DCP标记在JSP代码中设置了正确的属性

  • 其他TRACE语句已添加到Tridion标记库中,这证实了以下内容:

  • 从文件系统正确检索了XSLT
  • 从缓存中正确检索缓存的菜单
  • 使用提供的变量正确转换了XSLT

  • 通过将XSLT属性写出到HTML,我们看到XSLT处理器正在提供错误的参数.

因此,我可以安全地得出结论,该问题已被隔离到以下事件中; 正在使用不正确的页面ID调用XSL处理器.最可能的原因是由于动态组件表示(DCP)java代码中的并发问题,DCP被群集并且开始混淆哪个页面正在使用当前对象.

如果是这种情况,可以采取哪些措施来纠正它.

任何信息都会有帮助.提前致谢!

问候,

Keirthana TS

2013年1月22日更新:

在更多调试中,我们发现此问题在Presentation端(我们的演示服务器)上重复出现,并且事件系统与页面上出现的错误菜单无关.

也就是说,当我们查看从Tridion发布的jsp页面时,我们有顶层菜单,左侧菜单和面包屑的正确页面URI:

<tridion:ComponentPresentation pageURI="tcm:57-186286-64" componentURI="tcm:57-103196" templateURI="tcm:57-23654-32"/><!-- privat-->
<div id="nav"><div class="wrapper">
<tridion:ComponentPresentation pageURI="tcm:57-186286-64" componentURI="tcm:57-23638" templateURI="tcm:57-23656-32" />
</div></div>
<div id="page" class="clear ">
<div id="content" class="clear">
<tridion:ComponentPresentation pageURI="tcm:57-186286-64" componentURI="tcm:57-23639" templateURI="tcm:57-23656-32" />
<div id="middle" class="rightcolumn">
<tridion:ComponentPresentation pageURI="tcm:57-186286-64" componentURI="tcm:57-23636" templateURI="tcm:57-23656-32" />
Run Code Online (Sandbox Code Playgroud)

但是,当我们查看网页的来源时,我们发现页面URI(我们将页面URI写入html页面)搞砸了如下:

<div id="middle" class="rightcolumn">
Run Code Online (Sandbox Code Playgroud)

生成面包屑我们得到一个不同的pageURI而不是正确的.

tridion tridion2009 tridion-content-delivery tridion-2011

8
推荐指数
1
解决办法
215
查看次数