Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2005
    Messaggi
    19

    [JSP] upload di file

    Buon giorno,
    ho un problema che mi assilla da diversi giorni relativo all'upload di file....ho già consultato il forum senza trovare nulla di specifico per il mio caso.
    Lavoro con JSP e nel momento in cui inserisco un tag html con input type"file", non funzionano più i vecchi getParameter. VVoVe:

    Ora mi chiedo:

    ho visto pezzi di codice di applet e servlet che però non sono conformi al mio codice, non riesco a usare le multipart per un conflitto con javamail e non so se si può deviare in qualche modo;

    non riesco a usare javaUpload per non so quale strano motivo dato che importo normalmente le librerie con JbuilderX ma non mi fa usare il FileUpload.

    Qualcuno avrebbe dei riferimenti da mandarmi o dei pezzi di codice rigorosamente JSP.

    Buon anno a tutti

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Ho trovato del codice completo sul forum della sun:

    questo è il link al post
    http://forum.java.sun.com/thread.jsp...hreadID=690982

    e qui il codice (sarebbe la terza o quarta entry del thread).
    codice:
    <HTML>
    <HEAD><TITLE>File Upload Example</TITLE></HEAD>
    <BODY>
    	<FORM ENCTYPE='multipart/form-data'
    	 method='POST' action='servlet/FileStoreServlet'>
    	<INPUT TYPE='file' NAME='file1'>
    	<INPUT TYPE='submit' VALUE='upload'>
    </FORM>
    </BODY>
    And this is the FileStoreServlet.java:

    codice:
    import javax.servlet.*;
    import javax.servlet.http.*;
    import java.io.*;
    import java.util.*;
    import org.apache.commons.fileupload.*;
     
    public class FileStoreServlet extends HttpServlet
    {
    	public void doPost(HttpServletRequest req,HttpServletResponse res)
    		throws ServletException, IOException
    	{
    		res.setContentType("text/html");
    		PrintWriter pw = res.getWriter();
    		pw.println("<html>");
    		pw.println("<head><title>Hello</title></head>");
    		pw.println("<body>");
    		DiskFileUpload fileUpload = new DiskFileUpload();
    		List list = null;
    		try
    		{
    			list = fileUpload.parseRequest(req);
    		}
    		catch(FileUploadException ex)
    		{
    			throw new ServletException("Wrapped",ex);
    		}
    		Iterator iter = list.iterator();
    		while (iter.hasNext()) {
    		    FileItem item = (FileItem) iter.next();
    		    if (!item.isFormField()) {
    		    	File itemFile = new File(item.getName());
    		    	File destDir = new File(getServletContext().getRealPath("/")
    						+"stored");
    		    	if(!destDir.exists()) {
    		    		destDir.mkdirs();
    		    	}
    				File destFile = new File(getServletContext().getRealPath("/")
    						+"stored"+File.separator+itemFile.getName());
    				pw.println(item);
    				pw.println(destFile);
    				try
    				{
    					item.write(destFile);
    				}
    				catch(Exception ex)
    				{
    					//throw new ServletException("Wrapped",ex);
    					pw.println(ex.getMessage());
    				}
    		    }
    		}
    		pw.println("</body>");
    		pw.println("</html>");
    		pw.close();
    	}
    }
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  3. #3
    io ho usato con successo questa classe, in contemporanea con javamail:
    codice:
    import java.io.*;
    import java.net.*;
    import java.util.*;
    import javax.servlet.*;
    import javax.servlet.http.*;
    
    import com.oreilly.servlet.MultipartRequest;
    
    
    /**
     *
     * @author nrocco
     * @version
     */
    public class UploadServlet extends HttpServlet {
       
        private String webTempPath;
    
        public void init( ){
        webTempPath = getServletContext( ).getRealPath("/") + "UploadedFiles";    
        }
    
        public void doPost(HttpServletRequest request, 
                            HttpServletResponse response)
            throws ServletException, java.io.IOException {
            
           //file limit size of 5 MB
            MultipartRequest mpr = new MultipartRequest(
              request,webTempPath,5 * 1024 * 1024);
            Enumeration enums = mpr.getFileNames( );
            
            response.setContentType("text/html");
            java.io.PrintWriter out = response.getWriter( );
        
            out.println("<html>");
            out.println("<head>");
            out.println("<title>Servlet upload</title>");  
            out.println("</head>");
            out.println("<body>");
            for (int i = 1; enums.hasMoreElements( );i++)
                out.println("The name of uploaded file " + i +
                  " is: " + mpr.getFilesystemName((String) enums.nextElement( )) 
                    + "
    
    ");
            
            out.println("</body>");
            out.println("</html>");
        
            
        } 
    
        public void doGet(HttpServletRequest request, 
                           HttpServletResponse response)
            throws ServletException, java.io.IOException {
            
            throw new ServletException("GET method used with " +
                getClass( ).getName( )+": POST method required.");
        } 
    }

  4. #4

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.