问题标签 [tridion2009]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
tridion - Tridion 2011 - 在 Formatting Feature 窗口中过滤 XSLT
目前我们正在从 2009 年到 2011 年进行 Tridion 升级。
我看到一个奇怪的问题,想知道为什么它的更新方式不同。
我的问题:
在许多 Schema 中,我们都有自己的内容字段(即富文本字段)过滤 XSLT。
例子:
升级到 Tridion 2011 后,我看到架构更新为以下格式
因此,不会出现在组件上的富文本字段。
请让我知道这种行为背后的原因。
如何解决这个问题?
我已经修复了这个解决方案,下面是修复。
将当前 XSLT 替换为 Filtering XSLT 选项卡上的适当 XSLT,使用 Tridion 2009 上的 XSLT。
tridion - 在不使用搜索的情况下检索具有特定值和架构的 Tridion 2009 组件列表
我想创建一个驻留在 CMS 服务器上的 .NET 页面,该页面显示基于特定架构(tcm:3-3-8)和特定出版物(tcm:0-3-1)的所有组件,包括 BluePrinted和本地化项目,但前提是它们在该架构中的“URL”字段具有值“http://www.google.com”。
这是否可能,而不使用搜索服务,因为这相当慢且不可靠?
tridion - 在 Tridion 2009 上配置自定义解析器
有传言说(例如,请参阅发布最终发布许多组件并耗尽内存)自定义解析器在 Tridion 2009 中可用。我的问题:如何在没有 TridionContentManager.config 的情况下配置一个?还是我完全偏离了轨道,并且 2009 是否带有此配置文件?
dynamic - 使用 DD4T TBB 发布内容时出现序列化错误
我们从源代码控制重建了 DD4T TBB,并使用 TCMUploadAssembly.exe 将它们部署到 tridion。
我们创建了一个带有多媒体链接字段、组件链接字段和文本字段的简单组件,并填充了这些值。然后创建了一个 CT,其中包含 [生成动态组件,为组件发布二进制文件] TBB,并尝试发布单个 DCP。
我们能够在模板生成器中针对组件运行 CT 并获得预期的输出 [即格式良好的序列化组件 XML 输出]
但是,在发布时,我们会收到序列化错误。(见下文) 。代码尝试序列化任何组件字段(文本/多媒体/组件链接等)时发生此错误
我们无法确定根本原因。尝试远程调试代码,即使在序列化我们面临这个问题的组件对象时正确设置了所有 dynamic.component 对象属性。即使尝试重新启动 COM+、发布服务,但问题仍然存在。任何指针都受到高度赞赏。
无法找到代码在模板生成器中正确运行而没有序列化错误但在发布时失败并出现以下错误的原因。
这是错误消息:
生成 XML 文档时出错。
生成 XML 文档时出错。
你调用的对象是空的。
组件:模板
错误代码:0
用户:NORD\DWTMTSUser
StackTrace 信息详细信息:
在 Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationWriterField.XSArrayInfo.get_Item(对象 a,Int32 i)
在 Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationWriterField.Write13_Field(字符串 n,字符串 ns,对象 o,布尔 isNullable,布尔需要类型)
在 Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationWriterField.Write14_Field(对象 o)
在 System.Xml.Serialization.XmlSerializer.Serialize(XmlWriter xmlWriter,对象 o,XmlSerializerNamespaces 命名空间,字符串 encodingStyle,字符串 id)
在 System.Xml.Serialization.XmlSerializer.Serialize(XmlWriter xmlWriter,对象 o)
在 DD4T.ContentModel.SerializableDictionary`3.WriteXml(XmlWriter writer) 在 D:\DW-Source\Mainline\Src\DD4T\DD4T.ContentModel\SerializableDictionary.cs:line 80
在 System.Xml.Serialization.XmlSerializationWriter.WriteSerializable(IXmlSerializable 可序列化,字符串名称,字符串 ns,布尔 isNullable,布尔包装)
在 Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationWriter1.Write13_Component(String n, String ns, Component o, Boolean isNullable, Boolean needType) in :line 0
在 Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationWriter1.Write32_Component(Object o) in :line 0
在 Microsoft.Xml.Serialization.GeneratedAssembly.ComponentSerializer.Serialize(Object objectToSerialize, XmlSerializationWriter writer) in :line 0
在 System.Xml.Serialization.XmlSerializer.Serialize(XmlWriter xmlWriter,对象 o,XmlSerializerNamespaces 命名空间,字符串 encodingStyle,字符串 id)
在 System.Xml.Serialization.XmlSerializer.Serialize(XmlWriter xmlWriter,对象 o,XmlSerializerNamespaces 命名空间,字符串 encodingStyle,字符串 id)
在 System.Xml.Serialization.XmlSerializer.Serialize(XmlWriter xmlWriter,对象 o,XmlSerializerNamespaces 命名空间,字符串 encodingStyle)
在 System.Xml.Serialization.XmlSerializer.Serialize(XmlWriter xmlWriter,对象 o,XmlSerializerNamespaces 命名空间)
在 DD4T.Templates.Base.BaseComponentTemplate.Transform(Engine engine, Package package) 在 D:\DW-Source\Mainline\Src\DD4T\DD4T.Templates.Base\BaseComponentTemplate.cs:line 88
在 Tridion.ContentManager.Templating.Assembly.AssemblyMediator.Transform(引擎引擎,模板模板,包包)
在 Tridion.ContentManager.Templating.Assembly.CSharpSourceCodeMediator.RunTemplate(引擎引擎,包包,字符串 templateUri,字符串类名)
在 Tridion.Templating.CSharpTemplate.CSharpSourceTemplate.Transform(引擎 __engine,包 __package)
在 Tridion.ContentManager.Templating.Assembly.CSharpSourceCodeMediator.Transform(引擎引擎,模板模板,包包)
在 Tridion.ContentManager.Templating.Engine.ExecuteTemplate(模板模板,包包)
tridion - Tridion 2011 中的动态菜单问题
我们有一个应用程序,它具有通过发布动态组件表示动态生成的菜单。menu.xml 由基于结构组的组件模板写出,并且该组件模板通过事件系统触发,以在结构组时发布已发布。
在从 Tridion 2009 升级 Tridion 2011 之前,此设置运行良好。但自升级以来,菜单不会动态发布,并且每次结构组发生更改时都需要重新发布菜单组件模板。我们检查了事件系统,那里一切都很好。此外,重新发布菜单组件模板会在其他一些页面菜单中引发问题。
在进行一些调试时(我们让组件模板随时写出它正在处理的 pageURI),我们发现正在写出的页面 URI 是错误的。
以下是采取的步骤和得出的结论:
已检查所有错误页面;DCP 标记在 JSP 代码中设置了正确的属性
Tridion 标签库中添加了额外的 TRACE 语句,这证实了以下几点:
- XSLT 已从文件系统中正确检索
- 已从缓存中正确检索缓存的菜单
XSLT 已使用提供的变量正确转换
通过将 XSLT 属性写入 HTML,我们看到 XSLT 处理器提供了错误的参数。
因此,我可以安全地得出结论,该问题已被隔离到以下事件;正在使用不正确的页面 ID 调用 XSL 处理器。最可能的原因是动态组件表示 (DCP) Java 代码中的并发问题,其中 DCP 蜂拥而至并开始混淆哪个页面正在使用当前对象。
如果是这种情况,可以做些什么来纠正它。
任何信息都会有所帮助。提前致谢!
问候,
基尔塔娜 TS
2013 年 1 月 22 日更新:
在更多的调试中,我们发现这个问题在演示端(我们的演示服务器)反复出现,并且事件系统与页面上出现的错误菜单无关。
也就是说,当我们查看从 Tridion 发布的 jsp 页面时,我们有顶部菜单、左侧菜单和面包屑的正确页面 URI:
但是,当我们查看网页的源代码时,我们发现页面 URI(我们将页面 URI 写成 html 页面)乱七八糟,如下所示:
它生成面包屑,我们得到一个不同的 pageURI 而不是正确的。
tridion - 是否可以在 Tridion 2011 中修改/自定义组件“信息”详细信息
是否可以根据用户修改/自定义组件“信息”选项卡的详细信息。请查看以下详细信息:
现在在上面的图像中,我想显示图像的完整路径,例如 (d:\images\Chrysanthemum.jpg) "Original File:",因为它即将在 Tridion 2009 到来。
是否可以?
tridion - SDL Tridion 2009 SP1 自定义 URL 获取当前字段值
我正在连接到包含以下代码的组件字段上的自定义 URL
SaveAndClose 函数完美运行并将值发送回组件,但 window.dialogArguments.fieldValue 始终返回未定义。
tridion - 从 SDL Tridion 5.3sp1 到 2011sp1 的 Tridion 迁移问题
我们必须将 Tridion 5.3sp1 迁移到 2011sp1,
如果有人对这种迁移有一些经验,
我们只使用以下功能。
- DWT(我没有看到太多变化)
- 汤姆网
- 汤姆(TDSE类)
什么都需要改变?什么是疼痛区域?
我在哪里可以在线获取更多信息?
tridion - 更改富文本架构字段 Tridion 2009 中的文档类型
我是一名不时使用 Tridion 的前端开发人员(技术水平不是很高)。我正在寻找一种方法来更改 Tridion 2009 富文本模式字段中的文档类型,以允许我使用数据属性(用于工具提示弹出框)。目前富文本字段设置为严格或过渡。我需要将其设置为 HTML5(我知道这可以在 2011 年进行一些更改。我不确定有哪些更改。)就目前而言,默认情况下,在这些模式中的任何一种发布时,数据属性都会被删除。选择 HTML5 可纠正此问题。
任何帮助将不胜感激。
tridion - 组件中的 XSLT 被(未)编码
非常简单的问题,但我似乎无法让它正常工作。
我有一个组件,其中有一些 XSLT(用于导航)。它通过 XSLT TBB 使用 XSLT Mediator 发布。
在发布 < 变成<,并打破了xslt ...
组件内容(纯文本字段)
输出此组件的 XLT CT TBB:
输出 CP 的 XSLT Page TBB: