JSP (Java Server Page) - problema para subir imagen

   
Vista:

problema para subir imagen

Publicado por jose luis (2 intervenciones) el 08/03/2010 06:52:12
hola que tal amigos estoy trabajando con
apache-tomcat, he provado con las versiones 6 y 5
con las librerias commons-fileupload-1.2 y commons-io-1.3.2
lo que trato de hacer es copiar una imagen a una carpeta del servidor
lo que hago es copiar las librerias a la carpeta c:/tomcat/lib y
segun yo todo bien hasta hay, tengo mi aplicacion en la carpeta root del
servidor y tengo un formulario de tipo MULTIPART/FORM-DATA que manda un
campo de tipo file a una jsp con el codigo que aparece abajo, mi problema
es que apache-tomcat nunca me reconoce las clases contenidas en estas librerias y
por lo tanto no me permite copiar dicha imagen a una carpeta del servidor
y mi pregunta es ¿como devo de configurar apache-tomcat para que me detecte estas
librerias y el codigo de abajo pueda funcionar?.

<%@ page import="java.Util.*" %>

<%@ page import="org.apache.commons.Fileupload.*" %>

<%@ page import="org.apache.commons.Fileupload.Disk.*" %>

<%@ page import="org.apache.commons.Fileupload.Servlet.*" %>

<%@ page import="org.apache.commons.Io.*" %>

<%@ page import="java.Io.*" %>

<%


boolean isMultipart = ServletFileUpload.IsMultipartContent(request);

if(isMultipart){

int tamañoMaximoArchivo = 1024*1024*3; //valor en bytes --> (3MB)

String directorioDestino = "C:/imagen";

String nombreArchivo = "fotito.Jpg";

File uploadedFile = new File(directorioDestino,nombreArchivo);

DiskFileItemFactory diskFile = new DiskFileItemFactory();

diskFile.SetSizeThreshold(tamañoMaximoArchivo);

diskFile.SetRepository(uploadedFile);



FileItemFactory factory = diskFile;

ServletFileUpload upload = new ServletFileUpload(factory);

List items = upload.ParseRequest(request); // Parse the request



if(items.Size()>0){


FileItem item = (FileItem) items.Get(0);



if (! Item.IsFormField()) {

//out. Print("<p> if de! Item.IsFormField()");

String fieldName = item.GetFieldName();

String fileName = item.GetName();

String contentType = item.GetContentType();

boolean isInMemory = item.IsInMemory();

long sizeInBytes = item.GetSize();

out.Print("<p> fieldName --> " + fieldName);

out.Print("<p> fileName --> " + fileName );

out.Print("<p> contentType --> " + contentType );

out.Print("<p> isInMemory --> " + isInMemory);

out.Print("<p> sizeInBytes --> " + sizeInBytes);

item.Write(uploadedFile);

out.Println("<p> Se subio en el directorio --> " + uploadedFile.GetPath() );

out.Println("<p> con el nombre --> " + uploadedFile.GetName() );

}

}

}



%>
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