è da ieri che ci sto dietro e non sono risucita a risolvere
io riprovo a chiedere, magari a qualcuno viene l'illuminazione:
come ho scritto prima faccio una execute che crea il file in locale e una put che lo manda in remoto, ho controllato di non lasciare qualcosa aperto pensando che potesse essere quello a creare problemi ma ancora niente di fatto
nella execute ho:
codice:
PdfReader reader = new PdfReader(new FileInputStream(
sourceFiles[f]));
document = new Document(reader.getPageSizeWithRotation(1));
if (draft)
writer = new PdfCopy(document, out);
else
writer = new PdfCopy(document, new FileOutputStream(
destFilePath));
document.open();
...scrivo il file...
writer.freeReader(reader);
writer.close();
document.close();
poi lo riapro per aggiungere un watermark ad ogni pagina
codice:
if (draft) {
try {
ByteArrayInputStream in = new ByteArrayInputStream(out
.toByteArray());
PdfReader reader = new PdfReader(in);
PdfStamper stamp = new PdfStamper(reader,
new FileOutputStream(destFilePath));
..aggiungo watermark...
stamp.close();
in.close();
infine nella put schiaffo il file in rete
codice:
File file = new File(localFilePathName); //il file che ho creato nella execute
boolean ok = putMethod(remoteFileName, file); //ok è true quindi va a buon fine
file.delete(); //questo mi da false
non mi sembra di aver dimenticato qualcosa di aperto
sapete se esite qualche operazione da fare sul file per vedere perchè non è cancellabile??? grazie mille