【发布时间】:2012-05-05 09:31:04
【问题描述】:
我正在尝试在 Dreamweaver 模板中使用 Get Label TBB,该模板解析 %%LabelKey%% 之类的表达式,并将它们替换为存储在发布元数据中的组件中的值。
我正在尝试使用标签来存储绝对 URL(例如 http://www.example.com),但在尝试运行模板时在模板生成器中得到以下内容
错误:ConvertURLToPath() 无法解码 URL:无效转义
DWT 代码类似于:
<a href="%%LogoLink%%" target="_blank" title="%%LogoLinkTitle%%" class="logo">
<img src="@@Page.Publication.Metadata.parent_logo@@" width="95" height="24"
alt="@@parent_logo0.alt@@">
</a>
问题是由%%LogoLink%% 引起的。如果我删除该模板可以正常工作。为什么 Tridion 试图用这个值做一些事情?我以为只有tridion:href 才会尝试解决它。
任何帮助表示赞赏。
完整的堆栈跟踪:
引擎:Engine.Transform 错误:ConvertURLToPath() 不能 解码 URL:无效转义 Tridion.ContentManager.Session.GetTcmUri(String uri) 在 Tridion.ContentManager.Session.GetObject(String uri) 在 Tridion.ContentManager.Session.IsExistingObject(String uri) 在 Tridion.ContentManager.Templating.Engine.GetObject(会话会话, 字符串 itemUriOrWebDavUrl) 在 Tridion.ContentManager.Templating.Engine.GetObject(字符串 itemUriOrWebDavUrl) 在 Tridion.ContentManager.Templating.Templates.ExtractBinariesFromHtmlTemplate.ResolveWebDavUrl(字符串 urlToResolve,字符串 webDavBaseUrl,引擎引擎)在 Tridion.ContentManager.Templating.Templates.ExtractBinariesFromHtmlTemplate.ResolveTemplateBinaries(引擎 engine, Package package, TcmUri baseItemTcmUri, ExtractBinariesContentWrapper contentWrapper) 在 Tridion.ContentManager.Templating.Templates.ExtractBinariesFromHtmlTemplate.Transform(引擎 引擎,包包)在 Tridion.ContentManager.Templating.Dreamweaver.DreamweaverMediator.RegisterTemplateBinaries(包 包,字符串 baseItemTcmUri,字符串模板字符串)在 Tridion.ContentManager.Templating.Dreamweaver.DreamweaverMediator.Transform(引擎 引擎,模板templateToTransform,包包)在 Tridion.ContentManager.Templating.Engine.ExecuteTemplate(模板 模板,包包)在 Tridion.ContentManager.Templating.Engine.InvokeTemplate(包 包,模板调用模板调用,模板模板)
在 Tridion.ContentManager.Templating.Compound.CompoundTemplateMediator.Transform(引擎 引擎,模板templateToTransform,包包)在 Tridion.ContentManager.Templating.Engine.ExecuteTemplate(模板 模板,包包)在 Tridion.ContentManager.Templating.Engine.InvokeTemplate(包 包,模板调用模板调用,模板模板)
在 Tridion.ContentManager.Templating.Engine.TransformPackage(模板 模板,包包)在 Tridion.ContentManager.Templating.Engine.TransformItem(模板 模板,IdentifiableObject itemToRender) 在 Tridion.ContentManager.Templating.Debugging.DebuggingEngine.Run()
在 Tridion.ContentManager.Templating.Debugging.DebugSession.Run()
【问题讨论】:
标签: tridion dreamweaver-templates