使用jsf在portlet中显示图像的问题

时间:2011-08-28 20:52:13

标签: jsf liferay portlet

我需要一些帮助才能在我的portlet中显示图像。我在某处有图像 HDD。我用doGet()方法编写了servlet ImageServlet。我注册了servlet 在带有mapping / images /*.

的web.xml中

当我尝试显示图像时,问题就出现了:

<h:graphicImage url="/images/image.png" />

不调用servlet中的doGet()方法。我得到的HTML输出是:

<img src="/PortletName/images/image.png"/>

然而,当我使用其他标签时,例如:

<jsp:include file="/images/image.png"/>

调用ImageServlet中的

doGet()(它不起作用 显然,但它表明servlet已正确注册。)

我尝试了映射/ PortletName / images / *,但它没有帮助。我不能在开头没有'/'写url(我得到一个例外 - Liferay 禁止它。)

从h:graphicImage调用servlet时我是否遗漏了什么?或者有没有办法摆脱生成的HTML中的/ PortletName /?或者是否有其他方式来显示图像(使用包含或其他东西)?

帮助将不胜感激:)

编辑:  JSF 1.1; DTD portlet应用程序4.3.0; portlet的app_1_0.xsd; org.apache.portals.bridges.portletfilter.FilterPortlet

1 个答案:

答案 0 :(得分:0)

我设法做到了。我使用了Liferay PortalDelegateServlet: http://longgoldenears.blogspot.com/2008/03/portaldelegateservlet-servlet-session.html

我使用了<img>代码。