Получение динамических компонентов в качестве объектов данных и их взаимодействие во время выполнения - ASP Java - Tridion 2011


0

Я работаю над сайтом с большим количеством трафика, и мы стараемся избегать запросов брокера на метаданные, поскольку некоторые тесты нагрузки вызвало перегрузку сервера.

Я пытаюсь создать динамичную систему предложений и стимулов, которая отображает предложение контента на основе переменной url в различных областях определенных страниц с использованием динамических вставок шаблонов компонентов.

Чтобы обойти проблему загрузки, я хочу использовать подход, в котором мы сохраняем все предложения в компоненте, затем получаем этот компонент по идентификатору во время выполнения и повторяем предложения в нем, проверяя, является ли каждый из них применимо с учетом переменной URL.

Проблема заключается в том, что я не нашел способ получить компонент по id как объект данных и провести его взаимодействие. Мне нужно получить список идентификаторов из коллекции, а затем получить различные поля из этих компонентов.

Как вы это сделаете? Я не могу найти для этого никакой документации. Извините, если это просто, я испытываю сильное давление и не испытываю большого опыта с Tridion.

Мы используем ASP Java в Tridion 2011 SP1

Thanks

0

Добро пожаловать в удивительный мир TRIDION. Содержимое презентации компонента определяется шаблоном, используемым в Tridion CM. В более «традиционных» реализациях вы обнаружите, что содержимое компонента на самом деле представляет собой HTML-представление содержимого, которое не соответствует вашим потребностям.

Современные решения с Tridion, например DD4T или DXA, используют шаблоны компонентов, которые нажимают этот контент как структурированный формат данных (XML или JSON, в зависимости от версии), который соответствует вашим потребностям. Принятие этих рамок для вашей реализации было бы непостоянным во времени, учитывая чувство неотложности, которое я получаю от вашего сообщения, но вы могли бы следовать аналогичному подходу.

  1. Определите схему в CM, где содержимое, которое вам нужно, может быть сохранено.
  2. Создайте шаблон компонента (связанный с этой схемой), который может публиковать содержимое либо как есть (XML), либо преобразовать его в JSON (вот хороший пример such a template). Отметьте этот шаблон как динамический, чтобы компоненты могли публиковаться самостоятельно, без контейнера страницы.
  3. Загрузите презентацию компонента в свое веб-приложение, десериализируйте его, сделайте свою работу.