7

我们正在尝试取消发布页面,但它们出现“此项目正在使用中”的错误。当我们调查它时,它无法从不再使用的开发人员的本地计算机上取消发布。我们使用“本地文件系统”在他的计算机上创建了发布目标和目标类型。

我们希望取消发布内容并删除此目标。如何删除该发布目标和目标类型?

4

3 回答 3

7

您可以将该目标指向一个空的 Deployer,然后发出取消发布指令。Tridion 将报告该操作成功(意思是:没有失败),然后您就可以删除目标。

[编辑:更多内容] 您今天遇到的问题是您的发布目标使用了一个不再存在的目标。该目的地的“远端”是开发人员机器上的一个文件系统,而 Content Delivery Deployer 正在开发人员的机器上运行,监控该位置并成功部署内容。

现在您想从中取消发布内容,但您不能,因为它不再存在(目的地)。因此,您通过将目标更改为指向确实存在的目标并告诉 Tridion 取消发布它来欺骗 Tridion。Tridion 的发布关系始终在内容(页面、组件等)和发布目标之间——而不是给定发布目标的实际目的地。因此,通过从链接到目标的另一个目标/部署程序取消发布,您实际上是在告诉 Tridion 内容已从该目标中删除 - 现在可以删除。

希望这可以帮助

于 2012-05-21T18:22:28.127 回答
1

另一种方法是使用旧 TOM 的 SetPublishedTo() 方法告诉 Tridion 项目不再发布。(我认为新 API 中没有等价物——有人知道吗?)

另一件可能有用的事情是尝试使用数据库中的存储过程来查找使用发布目标的位置。换句话说,发布目标确实有完整的“在哪里使用”的支持;它只是没有出现在 API 中。如果您能弄清楚如何调用正确的存储过程,它可能会为您省去一些麻烦,这当然是一个只读操作,因此您不会损坏数据库。

于 2012-05-22T06:24:47.583 回答
1

哪个 Tridion 版本?在 Tridion2009 SP1 之前,有这个超级方便的页面取消发布 PowerTool,它只会将所有页面设置为未发布状态。不清理它,但可以解决那些烦人的“此项目正在使用”错误

于 2012-05-22T12:48:28.187 回答