Foros del Web » Creando para Internet » Diseño web »

Pasar un fichero a un servlet

Estas en el tema de Pasar un fichero a un servlet en el foro de Diseño web en Foros del Web. Hola, me gustaria saber como se pasa un fichero a un servlet, ya sé que en el formulario hay que poner un input type="file" y ...
  #1 (permalink)  
Antiguo 26/08/2002, 12:02
 
Fecha de Ingreso: junio-2002
Mensajes: 39
Antigüedad: 14 años, 3 meses
Puntos: 0
Pasar un fichero a un servlet

Hola,
me gustaria saber como se pasa un fichero a un servlet, ya sé que en el formulario hay que poner un input type="file" y tambien el enctype="multipart/form-data", pero como se recoge el fichero????,donde lo guarda??? , como puedo colocarlo en otro sitio????

Agradezco cualquier información.

  #2 (permalink)  
Antiguo 26/08/2002, 19:59
Avatar de hugo777  
Fecha de Ingreso: enero-2002
Ubicación: Lima, Perú
Mensajes: 757
Antigüedad: 14 años, 8 meses
Puntos: 1
Re: Pasar un fichero a un servlet

Hola, si se puede hacer, enviando como tu dices desde el formulario el path del archivo, y desde tu servlet, lees la entrada el método "service" lo que te manda el cliente, un ejemplo de parte de un código que tenía, es el siguiente:

// Obteniendo el inputstream para cargar el file
ServletInputStream servIn = request.getInputStream();

DataInputStream in = new DataInputStream(servIn);

//Avanza los caracteres del contenido inicial(lee hasta que obtenga una linea en blanco)
String line;

while ((line = in.readLine()) != null)
{
if (line.trim().length() == 0) break;
}

ByteArrayOutputStream byteOut = new ByteArrayOutputStream(
request.getContentLength());

byte[] buffer = new byte[4096];
int len;

// Copia y carga el file a un arreglo de bytes
while ((len = in.read(buffer)) > 0)
{
byteOut.write(buffer, 0, len);
}

Una vez que ya lo tienes puedes almacenarlo en cualquier otro lugar. En este caso estoy leyendo por bytes, después a través de otro stream , se puede pasar a otro (un archivo por ejemplo).
Recuerda que service, es el padre de los métods POST y GET.


Saludos,

[email protected].
  #3 (permalink)  
Antiguo 27/08/2002, 14:36
 
Fecha de Ingreso: junio-2002
Mensajes: 39
Antigüedad: 14 años, 3 meses
Puntos: 0
Re: Pasar un fichero a un servlet

Gracias hugo

funciona a las mil maravillas

por casualidad no tendras implementado el método para separar el resto de datos del formulario???
  #4 (permalink)  
Antiguo 06/09/2002, 16:21
Avatar de Zokor  
Fecha de Ingreso: julio-2002
Mensajes: 167
Antigüedad: 14 años, 2 meses
Puntos: 1
Re: Pasar un fichero a un servlet

Hola. Para hacer Uploads de ficheros de forma muy sencilla puedes utilizar las clases de O'Reilly (<a href='ir.asp?http://www.servlets.com/cos/index.html' target='_blank'>http://www.servlets.com/cos/index.html...</a>)

Otra opción es bajarte el uploadBean de <a href='ir.asp?http://www.javazoom.com' target='_blank'>http://www.javazoom.com...</a>. Es supersencillo y funciona a las mil maravillas. Internamente también utiliza las clases de O'Reilly. Con estas clases puedes obtener perfectamente separados los ficheros del resto de parámetros del formulario

Saludos ;)

<div align="center"><img src="http://www.alu.ua.es/d/dcmc/img/A1202.gif" width="75" height="78">
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:42.