На данный момент Liferay предоставляет набор глобальных переменных, определенных в init.vm
, которые могут использоваться шаблонами тем. Эти переменные задаются в init.vm
и находятся внутри Liferay ROOT.war: $PATH_TO_WEBAPPS/ROOT/html/themes/_unstyled/templates
.
И внутри моей пользовательской темы portal_normal.vm
я мог бы использовать ее, просто добавив #parse ($init)
. Который отлично работает.
Теперь переходим к моей проблеме. Я использую шаблон скорости для отправки моего адреса электронной почты. Итак, внутри моего портлета я создал шаблон электронной почты в месте как $SOME_PORTLET_NAME/src/main/webapps/template/email.vm
. Я мог бы отправить пользовательские переменные в шаблон, используя
VelocityContext velocityContext = new VelocityContext();
velocityContext.put("vp", velocityParameters);
Но я не мог использовать переменные по умолчанию, предоставленные Liferay, которые используются в теме.
Я пытаюсь использовать $languageUtil.get
для интернационализации в своем шаблоне электронной почты.
Что я пробовал?
- Клонирование
init.vm
внутри шаблона и его импорт. Что не сработало; глупый я. - Укажите полный путь к местоположению
ROOT.war
init.vm
. Это тоже не сработало (я удивлен, что это должно было сработать).
Вопрос:
Есть ли способ использовать эти глобальные переменные скорости в пользовательских портлетах (например, вне темы)?
Может ли это быть достижимо с помощью Java?
Или лучше выполнить LanguageUtil.get и отправить значение только в шаблон (это был бы мой последний вариант)?
Спасибо!!