Jsf 如何使用rich:upload上传图像

Jsf 如何使用rich:upload上传图像,jsf,richfaces,jsf-1.2,Jsf,Richfaces,Jsf 1.2,我上传图像有问题。图像正在正确上载,但浏览器未显示图像。它仅在刷新页面后显示 <rich:fileUpload id="upload" addControlLabel="Browse" autoclear="true" acceptedTypes="jpg, gif, png, bmp" maxFilesQuantity="1" fileUploadListener="#{BeanClass.fileUploadListener}" listHe

我上传图像有问题。图像正在正确上载,但浏览器未显示图像。它仅在刷新页面后显示

<rich:fileUpload id="upload" 
    addControlLabel="Browse" autoclear="true"
    acceptedTypes="jpg, gif, png, bmp"
    maxFilesQuantity="1"
    fileUploadListener="#{BeanClass.fileUploadListener}" 
    listHeight="110px">
    <a4j:support event="onsizerejected"reRender="upload"/>
    <a4j:support event="onuploadcomplete" reRender="changepictureForm,scriptId" />
</rich:fileUpload>


确保您的托管bean是会话范围的,还是请求范围的,并且在请求范围的托管bean类中使用
@KeepAlive
richfaces注释,以使其在ajax请求中生存。我以前在图像上载方面遇到过问题。我注意到这在一些浏览器(基于WebKit的Chrome或Safari)中运行良好,而在其他浏览器(基于Gecko的FF)中运行失败。最后,如果浏览器不是基于WebKit的,我会进行页面刷新。这不是一个解决方案,但它是一个变通办法。