我正在使用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>
答案 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>
的直接孩子。