Salve gente,
tramite degli esempi su internet sono riuscito a creare la mia servlet con relativa pagina JSP per l'upload di file. Vorrei sapere se fosse possibile includere una progress bar nella pagina di upload che mi indichi sullo stato della transazione.
Vi allego il mio codice:
SERVLET:
codice:
import com.oreilly.servlet.*;

//~--- JDK imports ------------------------------------------------------------

import java.io.*;

import javax.servlet.*;
import javax.servlet.http.*;

public class ControllerFiles extends HttpServlet
    {
    public void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
        {
        // Istanziamo le variabili
        // Il ServletContext sevirà per ricavare il MIME type del file uploadato
        ServletContext context = getServletContext();
        String         forw    = null;

        try
          {
            // Stabiliamo la grandezza massima del file che vogliamo uploadare
            int              maxUploadSize = 100000000;
            MultipartRequest multi         = new MultipartRequest(request, ".", maxUploadSize);
            String           descrizione   = multi.getParameter("text");
            File             myFile        = multi.getFile("myFile");
            String           filePath      = multi.getOriginalFileName("myFile");
            String           path          = "C:\\files\\";

            try
              {
                // ricaviamo i dati del file mediante un InputStream
                FileInputStream inStream = new FileInputStream(myFile);

                // stabiliamo dove andrà scritto il file
                FileOutputStream outStream = new FileOutputStream(path + myFile.getName());

                // salviamo il file nel percorso specificato
                while (inStream.available() > 0)
                    {
                    outStream.write(inStream.read());
                    }

                // chiudiamo gli stream
                inStream.close();
                outStream.close();
              }
            catch (FileNotFoundException fnfe)
              {
                fnfe.printStackTrace();
              }
            catch (IOException ioe)
              {
                ioe.printStackTrace();
              }

            forw = "/done.jsp";

            // mettiamo nella request i dati così da poterli ricavare dalla jsp
            request.setAttribute("contentType", context.getMimeType(path + myFile.getName()));
            request.setAttribute("text", descrizione);
            request.setAttribute("path", path + myFile.getName());
            request.setAttribute("size", Long.toString(myFile.length()) + " Bytes");

            RequestDispatcher rd = request.getRequestDispatcher(forw);

            rd.forward(request, response);
          }
        catch (Exception e)
          {
            e.printStackTrace();
          }
        }
    }
Pagina JSP
codice:
<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
   
    
    <title>My JSP 'index.jsp' starting page</title>
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
	<meta http-equiv="description" content="This is my page">
	<!--
	<link rel="stylesheet" type="text/css" href="styles.css">
	-->
  </head>
  
 <form align="center" method="POST" action="ControllerFiles" enctype="multipart/form-data">
    <table align="center" border="2" style="border-collapse: collapse">
        <tr>
            <td align="center"><font size="4" color="yellow">Descrizione</font></td>
            <td colspan="2">
                    <textarea name="text" cols="33" rows="2"></textarea>
            </td>
        </tr>
        <tr>
            <td align="center">File</td>
            <td>
                    <input name="myFile" type="file">
            </td>
            <td align="center">
                    <input type="submit" name="salva" value="SALVA">
            </td>
        </tr>
    </table>
</form>
 
 
</html>
WEB.XML DI TOMCAT
codice:
<?xml version="1.0" encoding="ISO-8859-1"?>

<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
    http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
    version="2.4">



 <welcome-file-list>
  <welcome-file>index.jsp</welcome-file>
 </welcome-file-list>

   <servlet>
    <servlet-name>ControllerFiles</servlet-name>
    <servlet-class>ControllerFiles</servlet-class>
  </servlet>
   <servlet-mapping>
    <servlet-name>ControllerFiles</servlet-name>
    <url-pattern>/ControllerFiles</url-pattern>
  </servlet-mapping>

</web-app>