I have a Spring Webflow application. In one view-state a user can upload file to server. By default, file is created temporarily by Apache Trinidad only for request scope. So I copy it to another path on server because we need user confirmation in next step. After copying, file is persisted on server disk storage and reference is .
<!-- This variable holds server File path
<var name="uploadFO" class="com.company.whateverUploadFO" />
...
<!-- User uploads file here in <tr:inputFile> element -->
<view-state id="view" view="/flow/upload.xhtml">
<transition on="reset" to="deleteFile"/>
<transition on="start" to="startProcessing"/>
</view-state>
In normal flow, file will be deleted explicitly. But there is a problem. What if user closes browser after upload and before confirmation? File will be left on server disk "forever". How can I prevent this? How can I register some clean-up method called when user abandons flow? Thank you