我是grails(1.3.7)的新手,我一直處於一種奇怪的情況,顯示來自文件系統的圖像。將one.png圖片放入web-app/images/fotos目錄。該zz.gsp:無法在grails中顯示來自文件系統的圖像
<img src="${resource(dir:'images/fotos', file:'one.png')}" alt="Nothing" />
相關的無效動作高清ZZ = {}工作正常。但是,如果我打算在rawRenderImage.gsp顯示同樣的畫面:
<body>
<p>
${fdir} <br/> ${fname} <!-- OK -->
</p>
<g:if test="${fname}">
<img src="${resource(dir:'fdir',file: 'fname')}" alt ="Nothing"/>
</g:if>
</body>
圖片不顯示的參數FDIR和FNAME通頁面inspite。在控制器中的操作是:
def rawRenderImage = {
// def basePath = servletContext.getRealPath("/")
// def basePath = grailsAttributes.getApplicationContext().getResource("/").getFile().toString() + "/images/fotos/"
// def basePath = grailsAttributes.getApplicationContext().getResource("/").getFile().toString()
// def fname = params.photoId + ".png"
// def fname = "/images/fotos/" + params.photoId + ".png"
basePath = "images/fotos" // or basePath=」images」 for /images/one.png
fname=」one.png」
[fdir:basePath, fname:fname]
}
即使直接受讓人基本路徑=」圖像/照片」和FNAME =」 one.png」不工作,以及與任意組合基本路徑獲得絕對路徑。甚至當我把圖片放在圖片目錄不起作用的情況下。我使用netbeans,但它也不能在控制檯模式下工作。
請幫忙。
「$ {resource(dir:fdir,file:fname)}」 - 相同的結果...沒有。 – tolymark
這很奇怪。您是否在瀏覽器中查看了生成的HTML,以查看的src'屬性中的URL?另外,你的示例控制器代碼在動作中沒有'basePath'或'fname'前面的'def',雖然註釋掉了。 – schmolly159
你是對的報價,但絕對路徑我有問題。 螢火蟲給出了從服務器到POST rawRenderImage響應: /家庭/ TOLY /的NetBeansProjects /照片/ Web的應用程序
/images/one.png