来自多个上传的动态图像

时间:2013-06-04 07:21:36

标签: jsf-2 primefaces galleria

我有一个带有fileupload的简单表单。文件上传和支持bean工作正常但我想在上传后显示上传的图像。我用过ui:重复但只有第一张图片重复上传! 我使用了多个p:graphicImage而不是ui:repeat,结果绝对正确。但我必须使用ui:repeat或p:galleria。

这是ui:重复使用错误的结果

<ui:repeat value="#{applicationImagesBean.screenidx}" var="idx">
    <p:graphicImage value="#{applicationImagesBean.getScreen(idx)}" height="320"/>
</ui:repeat>

这里有多个p:graphicImage,这是正确的,但它不是我想要的

<p:graphicImage value="#{applicationImagesBean.getScreen(0)}" height="320"/>
<p:graphicImage value="#{applicationImagesBean.getScreen(1)}" height="320"/>
<p:graphicImage value="#{applicationImagesBean.getScreen(2)}" height="320"/>

请注意,screenidx是一个包含0,1,2,3,...作为整数的简单列表

public StreamedContent getScreen(Integer idx) {
    try {
        File file = screenFiles.get(idx);
        return new DefaultStreamedContent(new FileInputStream(file), null, "" + idx.intValue());
    } catch (Exception e) {
        e.printStackTrace();
    }
    return null;
}
两个样本中的

我在getSceen上有一个断点,idx已经正确发送到getScreen但结果却不同。

我累了cache = falsetimestamp参数,但没有结果。

0 个答案:

没有答案