1

我正在尝试使用 freemarker 创建一个 struts2 组件。我ftl用这样的代码创建了一个文件:

<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>

不幸的是,没有设置 library 参数的值。它始终是一个空白String

我正在使用本教程中的建议,似乎s:param标签应该将参数传递到模板中并使其可用。我在这里想念什么?

有没有人有一些构建这些组件的经验可以提供一些启示?

谢谢。

4

2 回答 2

5

用单引号发送参数

<s:component template="mytemplate.ftl">
    <s:param name="library" value="'/scripts/mylibrary.js'"/>
</s:component>
于 2009-11-19T13:46:53.443 回答
0

我最终在有效的文档中遇到了一些语法。我必须像这样引用参数:

<script type="text/javascript" src="${parameters.get('library')?default('')}">
</script>
于 2008-11-13T04:00:31.623 回答