rich:fileUpload コントロールを使用してファイルをアップロードしようとしていますが、うまくアップロードできました。ここで直面している唯一の問題は、ファイル アップロード コントロールのアップロード ボタンをクリックすると、ページが送信されることです。これを回避しようとしています。
私がやろうとしているのは、アップロード ボタンがクリックされるとすぐに、必要なバックエンド操作を行うリスナーが呼び出されることです。そして、画像が表示されるセクションが更新されます。すべて正常に動作していますが、AJAX 経由でファイルをアップロードしたいと考えています。
Richfaces 4.1 を使用しています
<rich:fileUpload addLabel="Add photo" clearAllLabel="Clear All" clearLabel="Clear"
deleteLabel="Remove" doneLabel="Upload successful!"
uploadLabel="Upload profile pic"
fileUploadListener="#{studentProfile.fileUploadListener}"
acceptedTypes="jpg, gif, png, bmp" noDuplicate="true" immediateUpload="false">
<!-- <a4j:ajax event="uploadcomplete" render="validationButton"/> -->
<!-- <a4j:ajax event="clear" listener="#{uploadBean.doClearFilesList}" render="validationButton"/> -->
<a4j:ajax event="uploadcomplete" render="profilepic" immediate="true" />
</rich:fileUpload>
<a4j:outputPanel ajaxRendered="true" id="profilepic">
<rich:panel header="Profile Picture" style="width: 100px;height: 100px">
<h:graphicImage url="#{studentProfile.profilePictureURL}" width="100" height="100" />
</rich:panel>
</a4j:outputPanel>