JSP (Java Server Page) - enctype="multipart/form-data" y campos tipo text

 
Vista:

enctype="multipart/form-data" y campos tipo text

Publicado por Liliana (28 intervenciones) el 09/11/2005 20:43:33
--------------------------------------------------------------------------------

Gracias de antemano por leer este mensaje
Estoy realizando un upload, esto ya lo tengo solucionado

y tengo lo siguiente:
<form action="" method="post" enctype="multipart/form-data" name="form1">
<input name="tx" type="text" id="tx" value="">
<input type="file" name="file">
<input type="submit" name="Submit" value="Enviar">
</form>

El problema es que mientras tengo este campo no me permite copiar el archivo al servidor, cuando quito el campo tx, funciona correctamente.

y yo necesito tener el campo y leer el valor que se le introduce al campo tx, siempre me manda null, (leeo el valor del campo con lo siguiente:
String valor=request.getParameter("tx"); )
Si alguien me puede ayudar de que manera puedo hacerle para tener los dos tipos de campo juntos, que pueda copiar el archivo y ademas leer el valor,

Gracias por su ayuda
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:enctype=

Publicado por jorge luis (2 intervenciones) el 10/11/2005 21:41:36
lo que pasa esque tu empaquetas el request en el objeto multipart por lo cual la manera correcta de acceder a el campo es

mrequest.getParameter(strNombreParametro);

donde mrequest es el objeto de tipo multipartrequest
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:enctype=

Publicado por Begoña (1 intervención) el 25/01/2006 15:39:25
Hola yo tengo un problema con algo parecido.

Tengo el código siguiente dentro de un mismo servlet pero cuando lo ejecuto no recibo como valor del contentType multipart/form-data sino que sigue teniendo el valor application/x-www-form-urlencoded

El valor del campo ACTION es el nombre del mismo servlet en el que tengo el código que anexo ¿sabeis cual puede ser el problema?

Gracias por adelantado

El código es el siguiente: y el error lo da al llamar a
List fileItems = fu.parseRequest(request);

indicando "the request doesn't contain a multipart/form-data or multipart/mixed stream, content type header is application/x-www-form-urlencoded"


if (request.getContentLength() <= 1)
{
out.println("<form ACTION=\"cargaDatosSyn\" enctype=\"multipart/form-data\" method=post >");
out.println(" <input type=file name=" + fileArgName +">");
out.println(" <input type=submit value=\"Enviar Fichero\">");
out.println("</form>");
}
else
{
contentType = request.getContentType();
boundary = contentType.substring(contentType.indexOf("boundary=")+13); //antes ponia 9

if ((contentType != null) && (contentType.indexOf("application/x-www-form-urlencoded") != -1))
{
out.println("ha entrado<p>");
out.println("request.getMethod():"+request.getMethod()+"<p>");
out.println("request.getContentType():"+request.getContentType()+"<p>");
try
{
DiskFileUpload fu = new DiskFileUpload();

// maximo numero de bytes
fu.setSizeMax(1024*512); // 512 K

// tamao por encima del cual los ficheros son escritos directamente en disco
fu.setSizeThreshold(4096);

// directorio en el que se escribirn los ficheros con tamao superior al soportado en memoria
fu.setRepositoryPath("/tmp");

// ordenamos procesar los ficheros

List fileItems = fu.parseRequest(request);

if(fileItems == null)
{
out.println("El numero de ficheros subidos es null<p>");
}
out.print("<br>El nmero de ficheros subidos es: " + fileItems.size());
// Iteramos por cada fichero
Iterator j = fileItems.iterator();
FileItem actual = null;
while (j.hasNext())
{
actual = (FileItem)j.next();
String fileName = actual.getName();

//String namefile = request.getParameter("fichero");
out.println("el nombre del fichero es : "+ fileName + "<p>");
}
}
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:enctype=respuesta

Publicado por uhuru (1 intervención) el 05/03/2007 16:52:04
MultipartFormDataRequest mrequest = new MultipartFormDataRequest(request);
Hashtable h = mrequest.getFiles();

// traer parametros
String parametro = mrequest.getParameter("parametro")

// traer archivos
UploadFile up;
up = (UploadFile)h.get("fotoD");
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar