Uso de p: graphicImage en ui: repetir o p: dataTable

Tengo un Bean que tiene una Lista de Objetos, que contiene Objetos de Contenido Transmitido (Tipo de Primefaces) que representan Imágenes en una Base de Datos. Ahora quiero iterar sobre esta lista en una página JSF 2.0 (con Primefaces) y mostrar las imágenes. Mostrar solo una imagen de esta manera funciona:

<p:graphicImage value="#{ImageLoader.oneImage}" title="aImage" alt="no Img"/>

Pero si anido esta etiqueta en c: foreach, ui: repeat o p: datatable, ¡las imágenes no se cargan! El texto alternativo se muestra en su lugar

<ui:repeat value="#{ImageLoader.allImages}" var="img">
<p:graphicImage value="#{img}" alt="Hier sollte ein Bild sein" />
<br/>
</ui:repeat>

El bean Image-Loader:

@Named(value = "ImageLoader")
@Stateless
public class ImageLoader {

@Inject
private ImageFacade imgFacade;

private List<StreamedContent> allImages = new ArrayList <>();

private StreamedContent oneImage;

public StreamedContent getOneImage() {
    List<Image> findAll = imgFacade.findAll();
    byte[] imagedata = findAll.get(0).getImagedata();
    StreamedContent retVal = new DefaultStreamedContent(new     ByteArrayInputStream(imagedata));
    return retVal;
}

public void setOneImage(StreamedContent oneImage) {
    this.oneImage = oneImage;
}

public List<StreamedContent> getAllImages() {
    List<Image> findAll = imgFacade.findAll();
    Logger.getLogger(ImageLoader.class.getName()).log(Level.INFO, "### COUNT: {0}", findAll.size());
    for (Image image : findAll) {
        byte[] imagedata = image.getImagedata();
        allImages.add(new DefaultStreamedContent(new ByteArrayInputStream(imagedata)));
        Logger.getLogger(ImageLoader.class.getName()).log(Level.INFO, "### Added Image {0}", image.getImagename());
    }
    return allImages;
}

public void setAllImages(ArrayList<StreamedContent> allImages) {
    this.allImages = allImages;
}

}

No veo el problema, ¿me pueden ayudar por favor? :)

Gracias y Saludo