2008-11-10 85 views
1

我試圖用freemarker創建一個struts2組件。我創建了一個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>