У меня есть временный файл с данными, которые возвращаются как часть ответа SOAP через бинарное вложение MTOM. Я хотел бы удалить его, как только вызов метода «заканчивается» (т. Е. Завершает передачу). Как мне лучше всего это сделать? Лучший способ понять, как это сделать, — удалить их при уничтожении сеанса, но я не уверен, что есть более «немедленный» способ сделать это.
К вашему сведению, я НЕ использую 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;
}
}