Ciao,
scusa il ritardo nella risposta.
Ecco il codice che effettua l'upload delle immagini :
codice:
package srv;
import java.io.File;
import java.io.IOException;
import java.util.Iterator;
import java.util.List;
import java.util.Vector;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.apache.commons.fileupload.FileItemFactory;
import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileUpload;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;
import cls.CreaSelect;
import cls.EseguiSQL;
public class Upload extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet {
static final long serialVersionUID = 1L;
public Upload() {
super();
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doPost(request, response);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
HttpSession session =request.getSession();
ServletContext sc = this.getServletContext();
String server = sc.getInitParameter("server");
String port = sc.getInitParameter("port");
String id = sc.getInitParameter("id");
String pw = sc.getInitParameter("pw");
String nomeDB = sc.getInitParameter("nomeDB");
String pathFotoDir = sc.getInitParameter("pathFotoDir");
System.out.println("RicercaGestFin sever: "+server);
System.out.println("RicercaGestFin port: "+port);
System.out.println("RicercaGestFin id: "+id);
System.out.println("RicercaGestFin pw: "+pw);
System.out.println("RicercaGestFin nomeDB: "+nomeDB);
String codPers=(String)session.getAttribute("codPers");
System.out.println("Upload - codPers: "+codPers);
DiskFileItemFactory factory = new DiskFileItemFactory();
ServletFileUpload upload = new ServletFileUpload(factory);
String pathSave = null;
boolean multi = upload.isMultipartContent(request);
boolean esitoOper=true;
String message="";
try {
if(multi)
System.out.println("è multi part!!!!!");
else
System.out.println(" NON è multi part!!!!!");
List items = upload.parseRequest(request);
Iterator iterator = items.iterator();
while(iterator.hasNext()) {
System.out.println(" A");
FileItem item = (FileItem) iterator.next();
System.out.println(" B");
if(!item.isFormField()) {
System.out.println(" 1");
File fullFile = new File(item.getName());
System.out.println(" fullFile.getName(): "+fullFile.getName());
System.out.println(" 2");
pathSave = pathFotoDir + codPers + "//img//" + fullFile.getName();
System.out.println(" 3");
System.out.println("Upload - pathSave: "+pathSave);
File savedFile = new File(pathSave);
item.write(savedFile);
System.out.println(" 4");
}
}
} catch (Exception e) {
e.printStackTrace();
message="Erroe nell'upload: "+e.getMessage();
esitoOper=false;
}
String query="";
try {
System.out.println("Upload - stampa query: "+query);
CreaSelect creaSelect = new CreaSelect();
String querySelect = creaSelect.ricercaSpecifica(codPers);
EseguiSQL eSQL2 = new EseguiSQL(server,port, nomeDB, id, pw);
Vector listaElementi=listaElementi = eSQL2.executeSelect(querySelect);
System.out.println("Upload - select eseguita");
request.setAttribute("listaRecord", listaElementi);
} catch (Exception Exc) {
Exc.printStackTrace();
} finally {
}
if(esitoOper) {
message="L'immagine è stata salvata.";
}
request.setAttribute("message", message);
getServletContext().getRequestDispatcher("/jsp/aggiorna.jsp").forward(request, response);
}
}
La prima volta che salva le immagini viene creata una cartella chiamata con il "codPers" che identifica in modo univoco l'utente.
Come ti accennavo quando salva l'immagine si porta dietro tutto il path da dove viene caricata (es. c:\document\ecc...).
L'upload viene richiamato da una pagina .jsp dove si trova il classico "form" con il campo "sfoglia" ed il bottone "carica".
Spero potrai darmi qualche info per la risoluzione di questo problema.
Grazie mille in ogni caso! 
Ciao!