Глобальные переменные в трубопроводах 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; это может работать по-другому в других версиях.