2

我正在使用 JSF 和 glassfish 4.0。我知道所有放在项目resources文件夹下的images目录下的图片都可以直接访问。我想知道如何显示位于 glassfish 文件夹中的图像。我在 glassfish 域下创建了一个图像文件夹,我想在 JSF 页面中显示这些图像。谁能让我知道我该怎么做?我是新手,所以需要一些帮助。

<?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE glassfish-web-app PUBLIC "-//GlassFish.org//DTD GlassFish Application Server 3.1 Servlet 3.0//EN" "http://glassfish.org/dtds/glassfish-web-app_3_0-1.dtd">
<glassfish-web-app error-url="">
    <property name="alternatedocroot_1" value="from=/images/* dir=/test/webapp" /> 
    <class-loader delegate="true"/>
    <jsp-config>
        <property name="keepgenerated" value="true">
            <description>
                Keep a copy of the generated servlet class' java code.
            </description>
        </property>
    </jsp-config>
</glassfish-web-app>

JSF 页面:

<header>
    <h:graphicImage id="banner" style="width:700px;height: 52px;"  
                    value="/images/header.jpg" />
</header>
4

1 回答 1

6

根据评论,

我尝试将其添加到glassfish-web.xml

<property name="alternatedocroot_1" value="from=/images/* dir=/test/webapp/images" /> 

假设您使用的是安装了 GlassFish 的 Windows C:\,则此特定配置需要一个C:\test\webapp\images\images包含所有图像的文件夹。

如果您实际上有一个文件夹 C:\test\webapp\images,那么您应该进行如下配置:

<property name="alternatedocroot_1" value="from=/images/* dir=/test/webapp" /> 

另请注意,这绝对与 GlassFish 安装文件夹或 web 应用程序的部署空间无关,因此根据问题“我在 glassfish 域下创建了一个图像文件夹”绝对不会以这种方式工作。

如果您实际上有一个C:\path\to\glassfish\domains\test\webapp\images文件夹,那么您应该按如下方式配置它:

<property name="alternatedocroot_1" value="from=/images/* dir=/path/to/glassfish/domains/test/webapp" /> 

也可以看看:


更新:根据glassfish-web.xml您之后在问题中编辑的内容,<property>不应该进入<jsp-config>,但需要是<glassfish-web-app>.

于 2013-11-14T16:30:08.407 回答