如何显示位于玻璃鱼文件夹中的图像?

时间:2013-11-14 15:28:03

标签: jsf jsf-2 glassfish-4

我正在使用JSF和glassfish 4.0。我知道可以直接访问项目资源文件夹下的images目录中的所有图像。我想知道如何显示位于玻璃鱼文件夹中的图像。我在玻璃鱼域下创建了一个图像文件夹,我想在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>

1 个答案:

答案 0 :(得分:6)

根据评论,

  

我尝试在glassfish-web.xml

中添加此内容
<property name="alternatedocroot_1" value="from=/images/* dir=/test/webapp/images" /> 

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

如果您确实有一个文件夹C:\test\webapp\images,那么您应按如下方式进行配置:

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

另请注意,这绝对不是相对于GlassFish安装文件夹或webapp的部署空间,所以“我在玻璃鱼域下创建了一个图像文件夹”根据问题绝对是不这样做。

如果您确实有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>的直接孩子。