Глобальные переменные в трубопроводах Apache Cocoon

У меня есть некоторые статические переменные, которые используют XSL, которые в настоящее время хранятся в sitemap.xml в качестве глобальных переменных.

<map:pipelines>
   <map:component-configurations>
      <global-variables>
          ...
      </global-variables>
   </map:component-configurations>
...

Это все хорошо, но некоторые переменные зависят от конкретного развертывания, поэтому их необходимо изменить при запуске веб-приложения. По сути, мне нужно небольшое количество свойств, сохраненных в.WAR, которые будут доступны в XSLT.

Кто-нибудь должен был сделать что-то подобное? Если да, то какой подход вы использовали?

Спасибо

2 ответа

Для справки стоит проверить модуль ввода кокона RequestModule

Почему именно эти свойства должны храниться за пределами WAR? Cocoon уже хранит множество настроек для развертывания внутри WEB-INF,

Если вы просто пытаетесь сохранить конфигурацию вне карты сайта, .properties файлы могут быть вашим решением. Свойства, определенные в **.properties в WEB-INF доступны для использования в картах сайта Cocoon с помощью ${property-name} нотации.

Обратите внимание, что мой ответ основан на моем опыте работы с Cocoon 2.1.11; это может работать по-другому в других версиях.

Другие вопросы по тегам