首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在JSF中显示野生蝇外部的图像

在JSF中显示野生蝇外部的图像
EN

Stack Overflow用户
提问于 2015-10-29 18:52:41
回答 1查看 1.3K关注 0票数 2

我想在/var/映像下显示外部图像文件。为此,我在配置/Standalone.xml中为图像文件夹添加了另一个图像处理程序"img“子系统,如下所示。现在我可以通过http://localhost:8080/img/test.jpg浏览文件夹了。

代码语言:javascript
复制
<server name="default-server">
                <http-listener name="default" socket-binding="http"/>
                <host name="default-host" alias="localhost">
                    <location name="/" handler="welcome-content"/>
                    **<location name="/img" handler="images"/>**
                        <filter-ref name="server-header"/>
                    <filter-ref name="x-powered-by-header"/>
                </host>
            </server>
            <servlet-container name="default">
                <jsp-config/>
                <websockets/>
            </servlet-container>
            <handlers>
                <file name="welcome-content" path="${jboss.home.dir}/welcome-content"/>
                **<file name="images" path="/var/images" directory-listing="true"/>**
            </handlers>

但是,我无法在下面的JSF代码中正确地显示它。该图像不会在浏览器中的html页面中显示。你知道什么东西少了什么错了吗?谢谢。

代码语言:javascript
复制
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:h="http://xmlns.jcp.org/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:c="http://java.sun.com/jstl/core"
    xmlns:p="http://primefaces.org/ui" 
    >

<ui:composition template="template.xhtml">
    <ui:define name="content">
        <h:messages />

        <h:form id="myform">
            <h:panelGrid columns="5">

                <h:graphicImage value="/img/test.jpg" />
                ...
            </h:panelGrid>
        </h:form>
        <br />


    </ui:define>
</ui:composition>
</html>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-30 09:38:57

<h:graphicImage>不适合用于从外部URL服务图像。它将value解释为上下文相对URL,并自动将webapp的上下文路径添加到给定的value

换句话说,当webapp被部署到/somecontext的上下文路径时,那么

代码语言:javascript
复制
<h:graphicImage value="/img/test.jpg" />

生成

代码语言:javascript
复制
<img src="/somecontext/img/test.jpg" />

您应该注意到,通过检查浏览器控制台中img上生成的HTML输出和404错误(在Chrome/Firefox23 23+/IE9+中按F12 )。

只需使用普通的HTML <img>而不是<h:graphicImage>。在你的具体情况下,它不会带来额外的好处。使用JSF组件只会增加不必要的开销。

代码语言:javascript
复制
<img src="/img/test.jpg" />

另请参阅:

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33422416

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档