SEVERE: ошибка в потоковом динамическом ресурсе. (Apache) - PullRequest
1 голос
/ 14 марта 2012

У меня есть несколько изображений в базе данных, сохраненных как String, и я хочу зациклить их и просматривать их динамически с использованием простых лиц. Вывод: иногда показывать одно изображение, два или ничего. И я использовал все области (сеанс, просмотр, запрос), результат один и тот же.

вот код, который я использовал для преобразования строки в потоковое содержимое:

 private StreamedContent getImageFromString(String imageData) throws IOException {
    byte[] imageByte = null;
    BufferedImage imageBuffer = null;
    imageByte = byteToString(imageData);
    ByteArrayInputStream in = new ByteArrayInputStream(imageByte);
    imageBuffer = ImageIO.read(in);
    ByteArrayOutputStream os = new ByteArrayOutputStream();
    ImageIO.write(imageBuffer, "png", os);
    return new DefaultStreamedContent(new ByteArrayInputStream(os.toByteArray()), "image/png");

}

public byte[] byteToString(String imageStr) {

    return Base64.decodeBase64(imageStr);
}

и дизайн jsf:

     <ui:repeat  value="#{recent.recentlist}" var="recent" >

            <h:outputText value="#{recent.Id}"/>
            <br/>
            <p:graphicImage value="#{recent.graphicImage}">
                <f:param name="image_id" value="#{recent.Id}"/>
            </p:graphicImage>

            <br/><br/>

            <p:separator/>
        </ui:repeat>

результат все время (SEVERE: ошибка в потоковом динамическом ресурсе)

...