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

发布于 2024-12-01 23:30:49 字数 839 浏览 0 评论 0原文

我需要一些帮助来在我的 portlet 中显示图像。我在某处有图像 硬盘。我用 doGet() 方法编写了 servlet ImageServlet。我注册了servlet 在 web.xml 中映射 /images/*。

当我尝试显示图像时,问题就开始了:

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

但是,当我使用其他标记时,例如:

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

我尝试映射 /PortletName/images/*,但没有帮助。我不能在开头写没有“/”的网址(我得到一个例外 - 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

I need some help with showing images in my portlet. I have images somewhere on
HDD. I wrote servlet ImageServlet with doGet() method. I registered servlet
in web.xml with mapping /images/*.

The problem begins when i try to show image:

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

The doGet() method in servlet is not called. HTML output I get is:

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

However when I'm using other tag, for example:

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

doGet() in ImageServlet is called (it doesn't work
obviously, but it shows that servlet is registered correctly).

I tried mapping /PortletName/images/*, but it didn't help. And I can't write url without '/' in the beginning (I get an exception - Liferay
forbids it).

Am I missing something while calling servlet from h:graphicImage? Or is there any way to get rid of /PortletName/ in the generated HTML? Or is there other way to display image (using include or something)?

Help would be appreciated :)

Edit:
JSF 1.1; DTD portlet application 4.3.0; portlet-app_1_0.xsd; org.apache.portals.bridges.portletfilter.FilterPortlet

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

爱已欠费 2024-12-08 23:30:49

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

,我使用了 标签。

I managed to do it. I used Liferay PortalDelegateServlet:
http://longgoldenears.blogspot.com/2008/03/portaldelegateservlet-servlet-session.html

and I used <img> tag.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文