3

我们想实现一些功能,以便在发布或解析过程中由于某种原因发生错误时,我们使用 try/catch 块跳过它,但仍想通知用户跳过了某些内容。

SDL Tridion 2011 Publishing Queue 可以按状态过滤。这些状态之一是“警告”。是否可以使用模板代码或自定义解析器中的 API 触发发布事务以具有“警告”状态?

4

2 回答 2

4

如果您只需要在发布期间发出警告(例如 Publish Transaction 有状态警告),那么您将需要设置PublishInstruction.MaximumNumberOfRenderFailures为大于 0 的值。只要渲染错误的数量低于您指定的最大值,发布的状态将为警告。

如果在渲染之外发生错误,则指令将显示为失败。

另一方面,如果您想在 GUI(在消息中心)中显示一条消息,并带有“警告”,表明出现了问题,那么您将需要一个更复杂的架构。弗兰克不久前就在这方面工作过。这个想法 (IIRC) 是有一个 GUI 部分,例如一个 iframe 轮询返回该用户发布操作的状态的服务。事件系统将通过监视 PublishInstruction 来产生这些状态,并将它们写入某种存储(文件、数据库、内存)中,然后服务将轮询该存储。

于 2012-03-27T18:54:20.487 回答
1

恐怕这是不可能的,但上面的答案可能会帮助您找到替代解决方案。

于 2012-04-25T02:24:31.653 回答