代码之家  ›  专栏  ›  技术社区  ›  Randy Leonard

在Liferay Portlet中嵌入jpg

  •  1
  • Randy Leonard  · 技术社区  · 9 年前

    我使用的是Liferay portlet,在视图中嵌入jpg图像时遇到了问题。jsp页面。

    我的目录结构显示如下:

    webapp
    ---myportlet
    ------view.jsp
    ------myimage.jpg
    

    在我看来。jsp页面,我有以下内容:

    <img src="<%=request.getContextPath()%>/myimage.jpg" />
    

    上述图像路径解析为:

    path = /myportlet/myimage.jpg
    

    在我的portlet中。xml文件,我有以下内容:

    <supports>
        <mime-type>image/jpeg</mime-type>
        <portlet-mode>view</portlet-mode>
    </supports>
    

    我知道一个解决方案是将所有图像放在底层的web/app服务器中并引用该路径。但强烈建议将这些图像放在portlet目录中。

    话虽如此,一些问题:

    1. 是否可以使用Liferay将图像放在portlet目录中
    2. 我需要对portlet进行进一步的修改吗。xml或liferay portlet。xml文件?
    3. 有没有更好的方法来引用portlet目录中的图像文件路径
    4. 其他想法?
    1 回复  |  直到 9 年前
        1
  •  1
  •   Mr Lister hawi    9 年前

    可以在portlet中嵌入图像,并通过 <img> 标签下面是如何做到的。

    下面的代码为您提供了根目录,您的所有图像(和其他内容)都可以在web服务器中找到:

    request.getContextPath()
    

    然后将以下路径名附加到图像中:

    /html/<yourportletname>/<portletRelativePathToYourImage>
    

    在这个线程的原始帖子中,我声明了一个名为myportlet的portlet,其中嵌入了一个名叫myimage.jpg的图像。因此,显示此图像的代码如下:

    <img src='<%=request.getContextPath() + "/html/myportlet/myimage.jpg"%>' />
    

    希望这能帮助其他人。