Upload de ficheros en Java

8
168219

FileUpload: Subida de Ficheros al Servidor

Cuando realizamos una aplicación Java, es posible que tengamos la necesidad de
crear un sistema de administración, normalmente en la Intranet, para
simplificar las labores de mantenimiento.

Esta administración, posiblemente estará formada por unos cuantos formularios,
normalmente interactuará con una base de datos…. pero a veces, también
tenemos la necesidad de subir ficheros al servidor.

Para subir un fichero al servidor, debemos crear un formulario un poco
especial… via POST e indicando que es una subida multi-parte.

<HTML>
<HEAD>
<TITLE></TITLE>
</HEAD>
<BODY>
<center>
<form method=»POST»
enctype=’multipart/form-data’ action=»/servlet/uploadFichero«>
Por favor, seleccione el trayecto del fichero a cargar
<br><input type=»file» name=»fichero»>
<input type=»submit»>
</form>
 
</center>
</BODY>
</HTML>

En el formulario anterior, podemos ver que vamos a subir la respuesta a un
servlet llamado uploadFichero… este es el aspecto del formulario.

En otro tutorial, vimos
como crear un servidor Web
…. si atacasemos a nuestro servidor (cambiando
el destino de nuestro formulario),
obtendriamos una respuesta como ésta…. con ello nos hacemos una idea de lo que
el servidor se encuentra:

Es decir ….. vemos que es servidor es capaz de recibir una respuesta y
nosotros en nuestro servlet debe hacer lo mismo.

Ahora, tenemos que crear un servlet que sea capaz de procesar la
respuesta….

La labor … no parece demasiado sencilla …. aunque siempre hay alguien que
nos facilitará la tarea ….

En este caso …. hay un subproyecto en apache http://jakarta.apache.org/commons/fileupload/

que nos proporciona las clases para que nuestro trabajo sea mínimo:

Nos descargamos el jar (no olvidar incluirlo en el classpath). Si os falla este proyecto…. seguro que es por ésto.

Solamente tenemos que escribir un código mínimo

El resultado es impresionante .. en el directorio que hemos seleccionado….
tenemos el fichero que hemos solicitado ….. y nos a costado apenas unas
lineas…

En proximos tutorial os hablaremos de otras de las APIS que están disponibles
en apache ….

Sobre el
Autor ..

8 Comentarios

  1. hola podrian ayudarme a hacer funcionar este ejemplo hago lo siguiente:

    1.- genero el formulario y lo guardo en un jsp
    2.- depues bajo las librerias y las integro a mi proyecto y en el class pad
    3.- genero un archivo .java en el cual copio el codigo correspondiente indicado en esta pagina
    4.- al correr el archivo me dice que el error de que el recurso no esta disponible como en los mensaje anteriores del foro .

    5.- yo trabajo con apache 6.02 no se si tenga que ver y los jars que baje son del common.io el 1.3.2 y de uploadfile el 1.2.1

    Podrian ayudarme por favor o bien explicarme en que tipo de archivos tengo que introducir el codigo yo necesito un jsp que suba archivos no se si me puedan hacer el favir de orientarme.

    muchas gracias espero su pronta respuesta.

  2. Hola!!! Estoy aprendiendo java y solo quiero agradecer por este tutorial, ojala me puedan mandar información sobre este y mas temas relacionados con java para así aprender mas. Gracias…

  3. Quisiera saber si puedo enviar además del archivo otros campos. Por ejemplo que la pagina tenga algo como esto:

    Por favor, seleccione el trayecto del fichero a cargar

    Mi pregunta es esto se puede hacer y si se puede de que manera porque lo he intentando y los text me los devuelve null.
    De verdad que necesito de su ayuda. Gracias.
    lshg01@gmail.com

  4. creo que cometí un error al colocar el código:
    bueno deseo que además de enviar el archivo también se puedan enviar campos de texto, a través de post o a través de guet, lo he intentado de mil y un maneras o me devuelve null los campo o no me genera el archivo. gracias…

    lshg01@gmail.com

  5. disculpa gracias por el aporte pero mi pregunta es si esta aolicacion tambien puede funcionar para I2(Consorcio sin fines de lucro que desarrolla tecnologías de redes de alta velocidad. Es una red de fibra óptica desarrollada principalmente por universidades. Se esperan velocidades de 633 mbps para universidades, y 50 mbps para usuarios particulares)porfavor si me puedes ayudar de antemano muchas gracias mi mail es dragjohn@hotmail.com

  6. Buenos días

    Aqui se sube el fichero a traves de una jsp, pero si llamamos al servlet desde una aplicacion java, a traves de una url, como podemos pasar el fichero, teniendo en cuenta que tenemos desplegado el servlet en otra maquina distinta a la maquina en donde cojemos el fichero?

    Muchas gracias

    Un saludo

Dejar respuesta

Please enter your comment!
Please enter your name here