0

我将上传的图像文件保存在 tomcat 或 portlet 临时目录中,我想显示它们。我知道它们在服务器文件系统中的路径,但是如何生成正确的路径以在 portlet 的页面上显示它?它必须从 smth 变成:

opt/liferay/tomcat-7.0.27/temp/28-Image-portlet/WEB-INF/classes/intech/webpro/kegor/image/Clipboard02.jpg

http://test.com/web/guest/liferay-benefits?p_p_id=Image_WAR_Imageportlet&p_p_lifecycle=2&p_p_state=normal&p_p_mode=view&p_p_cacheability=cacheLevelPage&p_p_col_id=column-1&p_p_col_count=1&_Imag

如何得到它?

我知道它是如何从 portlets 资源文件夹中完成的:

#{resource['images:smiley.jpg']}

但是如何在 portlet 中显示来自某个服务器目录的图像?

4

2 回答 2

0

如果只需要显示内容(无需权限检查),可以使用Tomcat。将文件放入 /webapps/portlet-name/html/(或 temp/portlet-name/html/)目录。结果:http ://site.com/portlet-name/html/image.jpg

于 2013-02-27T14:25:03.020 回答
0

您不能使用 #{resource['image']} 从另一台服务器访问图像,您可以

1)在xhtml中给出完整的图像路径

2) 将图像路径保存在 CSSfile 中,并在 xhtml 中使用 CSS 类。

3) 创建一个通用的 util 函数或 ResourceHelper ApplicationScoped Bean,它有类似
getResource(String imageName) 的东西,它返回正确的 URL。然后你
可以在你的 xhtml 中使用它作为
#{ResourceHelper.getResource('image.png')}

于 2013-02-26T16:58:05.623 回答