这是How to upload an image using ByteArrayOutputStream in Vaadin?
的后续活动我将代码从那里放到我的应用程序中。但是,内部的 被覆盖的getStream()仅被调用一次,并且在下一次图像更改尝试时,不再被调用。外部代码被执行。不使用静态变量。
final byte [] imageBytes = beanItem.getPicture(); // a byte []
StreamSource streamSource = new StreamResource.StreamSource() {
@Override
public InputStream getStream() {
System.out.println(">>>> streamResource:getStream called.size:" + imageBytes.length);
return (imageBytes == null) ? null : new ByteArrayInputStream(imageBytes);
}
};
StreamResource imageResource = new StreamResource(streamSource, "");
image.setSource (imageResource);
感谢您的帮助。
问候 格里