Ver Mensaje Individual
  #7 (permalink)  
Antiguo 25/07/2010, 20:12
nutriax
 
Fecha de Ingreso: agosto-2009
Mensajes: 25
Antigüedad: 14 años, 8 meses
Puntos: 0
Respuesta: Subir archivos y valores de campo de input de formulario

Hola, si entendi como es la session, de hecho la uso para guardar datos del logeo y otros tipos de datos. como dato adicional uso jsp y jstl y para que el usuario no tenga que rellenar nuevamente los datos del formulario cuando hace el submit lo proceso en un servlet y si tiene errores, guardo el valor de todos los campos en session y realizo un requestDispatcher.forward, y en el jsp lo leo con el jstl el valor del campo (todo esto usa session).
ahora lo que no se si me entendio bien, es que el problema que tengo es cuando utilizo el FileUpload para subir el archivo, cuando realizo el upload.parseRequest( request ); para que me devuelva todos los campos de type="files", si mas tarde quiero realizar lo mismo para recuperar todo los campos que son de type="text" (en otra parte del servlet no me devuelve ningun campo, debugeando me di cuenta que despues del primer upload.parseRequest( request ); (osea cuando buso los campos type="file") me blanquea el request, por eso en el segundo no se encuentra ningun campo tipo text.
pero esto lo solucione creando una clase intermedia, a esta le cree un metodo al que le paso el request y me guarda en dos atributos (campos e imagens) de tipo map, con lo cual proceso una sola vez el request y me completa dichos atributos con los campos de tipo text y en el atributo imagen me completa el map con los campos de tipo file y los atributos tienen sus geter y seter, por lo cual en el servlet obtengo el valor ingresado y luego proceso el campo file para subir el archivo.
por lo menos ahora anda, no se si sera la forma correcta de hacerlo asi, pero anda.
avisame si es eso lo que entendiste del problema, ya que me desoriento lo que me decis que con el forward lo puedo solucionar, pero concretamente mi problema no es pasar datos de una pagina a otra, es que se me blanqueaba el request.