我使用的是Tridion 5.3。
我有一个网页,有超过100个pdf链接附加到它。当我发布这个页面时,并不是所有的pdf都会发布,即使我得到了每个pdf的网址,比如"/pdf/xyzpdfname_tcm8-912.pdf"。当我点击这些链接时,我得到一个404错误。对于我得到错误的相同的pdf组件,如果我通过一次附加5到10个pdf来发布它们,它们就会发布,没有404错误,一切都很好。但这不是我需要的功能。有人知道为什么Tridion不能部署我批量发布的二进制内容吗?
我正在使用engine.PublishingContext.RenderedItem.AddBinary(pdfComponent).Url来获取pdf url。
发布于 2012-03-23 03:20:53
这会与你的PDF的命名有关吗?
Tridion有一种机制,可以防止您意外地使用名称相同的不同二进制文件覆盖二进制文件。
我可以看到您尝试部署的二进制文件具有ID:
tcm:8-755-16您将按如下方式命名它:
/www.mysite.com/multimedia/pdfname_tcm8-765.pdf使用变量Id:
variantId=tcm:8-755您是否也可以从不同的模板发布相同的二进制文件?也许具有相同的文件名,但具有不同的变体Id?
如果是这样的话,Tridion假设你正在尝试发布同一二进制文件的两个“变体”(例如,调整大小的图像,显然与PDF无关)
因此,部署程序会抛出一个错误,以防止您意外覆盖首先发布的二进制文件。
你可以通过两种方式来解决这个问题:
1>使用相同的变体ID发布这两个二进制文件
2>如果您确实想发布一个变体,请将文件名更改为其他名称。
我希望这能帮到你!
发布于 2012-03-22 22:49:23
查看传输服务和部署程序的日志文件。如果这些不能提供清晰度,在cd_transport_conf.xml中将Cleanup设置为false,重新启动传输服务并再次发布。然后检查是否所有的PDF最终都在您的传输包中。
发布于 2012-03-22 23:38:23
engine.PublishingContext.RenderedItem.AddBinary(pdfComponent).Url为您提供了项目的URL,因为它将在成功的情况下发布,而不是它将发布的保证。
我很确定你正在达到你的传输包的最大尺寸限制。
PS -检查发布队列中事务的状态,可能会给您一个提示
更新问题后:
模板和/或您的环境出现了严重的错误。发布的URL是"tcm8-7*6*5.pdf“,但项Uri是"tcm:8-7*5*5”。
你能再检查一下这里发生了什么吗?
https://stackoverflow.com/questions/9822298
复制相似问题