gpt4 book ai didi

ajax - PRIMEFACES - 如何刷新

from clicking a ?

转载 作者:行者123 更新时间:2023-12-04 10:18:27 28 4
gpt4 key购买 nike

我正在考虑这个展示:http://www.primefaces.org/showcase/ui/dynamicImage.jsf特别是子案例“GraphicText on-the-fly”。

我的问题是通过添加一个 .当按下按钮时,我需要图像动态变化。

在 DynamicImageController 类中,我重新编写了与图形图像相关联的 getter:

public StreamedContent getGraphicText(){
double random = Math.random();// a double value with a positive sign, greater than or equal to 0.0 and less than 1.0.
if(random>0.5){
BufferedImage bufferedImg = new BufferedImage(100, 25, BufferedImage.TYPE_INT_RGB);
Graphics2D g2 = bufferedImg.createGraphics();
g2.drawString("This is a text", 0, 10);
ByteArrayOutputStream os = new ByteArrayOutputStream();
try {
ImageIO.write(bufferedImg, "png", os);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
graphicText = new DefaultStreamedContent(new ByteArrayInputStream(os.toByteArray()), "image/png");
} else {
BufferedImage bufferedImg = new BufferedImage(100, 25, BufferedImage.TYPE_INT_RGB);
Graphics2D g2 = bufferedImg.createGraphics();
g2.drawString("This is another text", 0, 10);
ByteArrayOutputStream os = new ByteArrayOutputStream();
try {
ImageIO.write(bufferedImg, "png", os);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
graphicText = new DefaultStreamedContent(new ByteArrayInputStream(os.toByteArray()), "image/png");
}
return graphicText;
}

我有这个按钮:
<p:commandButton id="refreshImageButton" value="Refresh image random">
<p:ajax update=":idForm" />
</p:commandButton>

和图像:
<p:graphicImage value="#{dynamicImageController.graphicText}" />

idForm 是包含我的 graphicsImage 和我的 commandButton 的表单的表单 id

我的问题是:

为什么如果我按下键盘上的 F5 按钮,图像会随机改变,与 getGraphicText 方法中所需的行为一致?
为什么当我按下按钮时图像没有改变?

谢谢。

附:我真正的问题是 jcaptcha 在 primefaces 中的集成,我的集成几乎终止了,我只错过了验证码图像的刷新按钮

最佳答案

默认情况下 graphicImage缓存图像。
设置 cache归因于 false在您的 p:graphicImage像这样的东西:<p:graphicImage value="#{dynamicImageController.graphicText}" cache="false" />

关于ajax - PRIMEFACES - 如何刷新 <p :graphicImage> from clicking a <p:commandButton>?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20845992/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com