2008-11-10 8 views
1

Я пытаюсь создать компонент struts2 с помощью freemarker. Я создал ftl файл с кодом, как это:Передача параметра в компонент struts2

<script type="text/javascript" src="${parameters.library?default('')}"></script> 

Что ожидает параметр с именем library, который будет передан к компоненту. Если параметр отсутствует, то по умолчанию используется пустой String.

На моей странице JSP, я имею в виду компонент, как это:

<s:component template="mytemplate.ftl"> 
    <s:param name="library" value="/scripts/mylibrary.js"/> 
</s:component> 

К сожалению, значение параметра библиотечном не установлен. Это всегда пустой String.

Я использую совет от этого tutorial, и кажется, что тег s:param должен передать параметр в шаблон и сделать его доступным. Что мне здесь не хватает?

Есть ли у кого-нибудь опыт создания этих компонентов, которые могли бы пролить свет?

Спасибо.

ответ

5

отправить параметры с одинарными кавычками

<s:component template="mytemplate.ftl"> 
    <s:param name="library" value="'/scripts/mylibrary.js'"/> 
</s:component> 
+0

Спасибо. Я попробую это. – 2009-11-19 14:20:55

0

В конечном итоге я столкнулся с некоторым синтаксисом в документах, которые работают. Я должен обратиться к параметру, как это:

<script type="text/javascript" src="${parameters.get('library')?default('')}"> 
</script>