gpt4 book ai didi

jsf - 流式传输动态资源时出错。使用 p :graphicImage with Primefaces

转载 作者:行者123 更新时间:2023-12-03 18:36:51 24 4
gpt4 key购买 nike

我正在尝试使用 p:graphicImage 标记动态显示素面中的图像,如下所示:

<p:graphicImage value="#{submissionBean.contestImage}">
<f:param name="imageName"
value="#{contestBean.createContest.submissions[0].fileName}" />
</p:graphicImage>`

托管bean如下:
@ManagedProperty("#{param.imageName}")
private String imageName;

public String getImageName()
{
return imageName;
}

public void setImageName(String imageName)
{
this.imageName = imageName;
}

private StreamedContent contestImage;

public StreamedContent getContestImage()
{
FacesContext context = FacesContext.getCurrentInstance();
if (imageName == null)
imageName = Constants.SUBMISSION_FILE_DIR + "/" + "sacxzx_asdsdaas_icon.png";
if (context.getRenderResponse())
{
// So, we're rendering the view. Return a stub StreamedContent so
// that it will generate right URL.
return new DefaultStreamedContent();
}
else
{

return new DefaultStreamedContent(this.getClass().getResourceAsStream(Constants.SUBMISSION_FILE_DIR + "/" + imageName));
}
}

我总是收到“严重:流式动态资源出错”的错误消息。

检查图像的 URL 似乎很好:
http://localhost:8080/mashup/javax.faces.resource/dynamiccontent.xhtml?ln=primefaces&pfdrid=pfdrid_4290aa0c-8eef-45ea-a281-638e460e33bf&imageName=sacxzx_asdsdaas_icon.png

知道这是为什么吗?

谢谢!

最佳答案

应该是 SessionScoped .作为方法 getContestImage()在页面处理期间多次调用,最好只创建一次流。

关于jsf - 流式传输动态资源时出错。使用 p :graphicImage with Primefaces,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12011573/

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