获取动态组件作为数据对象,并在运行时间intergating他们 - ASP Java - Tridion 2011


0

我正在一个网站有很多的流量,我们正试图避免对元数据的代理查询,因为一些负载测试导致服务器过载。

我试图建立一个动态的优惠和激励制度,它使用动态组件模板插件呈现基于某些网页的各个区域中的url变量提供的内容。

为了解决加载问题,我想要使用一种方法,将所有的商品存储在组件中,然后在运行时通过ID获取该组件,并遍历其中的商品,检查每个商品是否为根据URL变量适用。

问题是我还没有找到一种方法来获取一个组件作为数据对象的id,并interogate它。我需要能够从集合中获取id列表,然后从这些组件获取各个字段。

你会如何做到这一点?我找不到任何文件。我很抱歉,如果这很简单,我承受很大的压力,并且没有很多Tridion的经验。

我们使用ASP的Java在外表套上2011 SP1

感谢

0

欢迎外表套上的精彩世界。组件展示的内容由Tridion CM中使用的模板确定。在更“传统”的实现中,您会发现组件的内容实际上是内容的HTML表示,这并不能满足您的需求。

Tridion的现代解决方案(如DD4TDXA)使用组件模板,将这些内容作为符合您需要的结构化数据格式(XML或JSON,具体取决于版本)推送。考虑到我从你的信息中得到的紧迫感,采用这些框架来实现你的实施将是时间过于紧迫的,但你也可以采取类似的方法。

  1. 在CM中定义一个模式,您可以在其中存储您需要的内容。
  2. 创建一个组件模板(与该模式相关联),可以按原样(XML)发布内容或将其转换为JSON(这里是一个很好的示例such a template)。将此模板标记为动态,以便组件可以自行发布,而不需要页面容器。
  3. 在您的Web应用程序中加载组件演示文件,反序列化它,做你的事情。