我有一个临时文件,其中包含通过 MTOM 二进制附件作为 SOAP 响应的一部分返回的数据。我想在方法调用“结束”(即完成传输)后立即将其丢弃。对我来说最好的方法是什么?我能弄清楚如何做到这一点的最好方法是在会话被销毁时删除它们,但我不确定是否有更“直接”的方法来做到这一点。
仅供参考,我没有使用 Axis,我使用的是 jax-ws,如果这很重要的话。
更新:我不确定回答者是否真的理解这个问题。我知道如何在java中删除文件。我的问题是这样的:
@javax.jws.WebService
public class MyWebService {
...
@javax.jws.WebMethod
public MyFileResult getSomeObject() {
File mytempfile = new File("tempfile.txt");
MyFileResult result = new MyFileResult();
result.setFile(mytempfile); // sets mytempfile as MTOM attachment
// mytempfile.delete() iS WRONG
// can't delete mytempfile because it hasn't been returned to the web service client
// yet. So how do I remove it?
return result;
}
}