我有一个大问题,我需要你的帮助。
我的应用程序是JSF和丰富的面孔。我的模型中有一个Image列表(imageModel):
import java.awt.Image;
List<Image> liste_images = new ArrayList<Image>()
我必须在同一个地方逐个播放它们(每3秒显示一次)。
我如何使用J Query执行此操作? 我必须将图像列表发送到java脚本然后显示它们吗?
请帮忙!
答案 0 :(得分:0)
好吧,因为您使用的是RichFaces:
<a4j:mediaOutput>
(link)用于显示图片:
<a4j:mediaOutput element="img" id="image"
createContent="#{bean.paint}" value="#{bean.currentImage}" />
paint方法接受一个OutputStream和一个Object(由value属性提供):
public void paint(OutputStream out, Object data) {
BufferedImage img = (BufferedImage) data;
ImageIO.write(img, "jpg", out);
}
假设您使用BufferedImage。
<a4j:poll>
(link)会定期发出ajax请求。
<a4j:poll render="image" interval="3000" enabled="#{bean.active}"
actionListener="#{bean.showNextImage()}" />
showNextImage方法将从列表中获取下一个图像,我相信你知道该怎么做。 :)