Erro ao Tentar Fazer Upload

1 resposta
K

Galera, o negocio é seguinte estou tentando criar uma página de upload de arquivos,nada muito complicado, apenas pra fins didáticos, estou seguindo o exemplo de um livro que tenho aqui,mas estou com um problema,já chequei algumas vezes o meu código e ele está de acordo com o livro, mas mesmo assim ele não funciona,ao tentar fazer o up do arquivo recebo o seguinte erro :

"java.io.FileNotFoundException: C:\JEE\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\uploadArquivos\files\03.jpg (O sistema não pode encontrar o caminho especificado)"

meu bean :
package meupacote;
import java.io.File;
import java.util.*;

import org.apache.commons.fileupload.*;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;

import com.sun.xml.internal.ws.wsdl.writer.document.StartWithExtensionsType;


import javax.servlet.ServletContext;
import javax.servlet.http.*;

public class UploadBean {
	
	private  DiskFileItemFactory fileupload = new DiskFileItemFactory();
	private ServletFileUpload sfu = new ServletFileUpload(fileupload);
	private String diretorio;
	private String filename;
	
	public String getFilename() {
		return filename;
	}
	public String getDiretorio() {
		return diretorio;
	}
	public void setDiretorio(String diretorio) {
		this.diretorio = diretorio;
	}
	
	public boolean doFilePost(HttpServletRequest request,ServletContext context){
	 if(request.getContentType()==null)
		 return false;
	
	if(!request.getContentType().startsWith("multipart/form-data"))
		return false;
	
	
	String path = context.getRealPath(getDiretorio());
	try{
		List list = sfu.parseRequest(request);
		Iterator iterator = list.iterator();
		   while(iterator.hasNext()){
			   FileItem  item = (FileItem)iterator.next();
			   
			   if(!item.isFormField()){
				   filename = item.getName();
				   
				   if((filename!=null) && (!filename.equals(""))){
					   filename = (new File(filename).getName());
					   item.write(new File(path+"/"+ filename));
				   }
			   }
		   }
		
	}catch (FileUploadException e) {
		e.printStackTrace();
	}catch (Exception e) {
		e.printStackTrace();
	}
	return  true;

}
}
minha jsp:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Fazendo Upload de Arquivos</title>
</head>
<body>
<jsp:useBean id="upl" scope="page" class="meupacote.UploadBean"/>
<jsp:setProperty property="diretorio" name="upl" value="files"/>
<%
if(upl.doFilePost(request,application)){
	out.println(upl.getFilename());
}
%>

<form method="post" action="FazendoUploadComJsp.jsp" enctype="multipart/form-data">
Arquivo:<input type="file" name="file"/><br>
<input type="submit" name="submit" value="Enviar">
</form>
</body>
</html>
A pasta "files" existe, e foi criada na raiz do projeto,estou usando TomCat e Eclipse

1 Resposta

K

Pessoal,será que pode ser algum problema de permissões do container?

Criado 14 de fevereiro de 2012
Ultima resposta 14 de fev. de 2012
Respostas 1
Participantes 1