Upload com erro

5 respostas
lcsoftware

Pessoal tenho um upload que funciona legal para localhost mas quando o envio para a web ele nao fuciona não, o q pode ser, será que é o caminho?, permisão? …

5 Respostas

sergiolopes

ta loco q alguem vai vir aqui e ler tudo isso!
coloque o erro q ta acontecendo…

pra mim isso ta com cara de falta de permissao pra escrever na pasta… ja q roda em localhost…

cv1

Voce pode ser mais especifico sobre os problemas que esta tendo com esse (monte de) codigo?

lcsoftware

Pessoal troquei para o fileupload do jakarta e continua a mesma coisa eu consigo gravar no localhost nas nao na web, nao entendo pq? o codigo parace estar correto nao é, eu acesso sireitinho o servlet entao nao sei o que rola não. Será o formulario quando eu mando:

<FORM action=http://criativs.locaweb.com.br/servlet/com.classes.criativa.FileUploadServlet method=post encType=multipart/form-data >

mas PARECE ele acha o servlet direitinho.

String message = "";;
		path = getServletContext().getRealPath("/") + "banners";
		out = response.getWriter();
		
		try { 
         
        	DiskFileUpload upload = new DiskFileUpload(); 

         	upload.setSizeThreshold(4096); 
         	//upload.setSizeMax(-1); 
         	upload.setRepositoryPath( path ); 
			
         
         	List items = upload.parseRequest(request); 

         	Iterator iter = items.iterator(); 
        	long time_1 = new Date().getTime();
         	
         	while (iter.hasNext()) { 
            	
            	FileItem item = (FileItem) iter.next(); 
             
            	if ( !item.isFormField() ) { 
               
               		String fieldName    = item.getFieldName(); 
               		String fileName     = item.getName(); 
               		String contentType  = item.getContentType(); 
               		boolean isInMemory  = item.isInMemory(); 
               		long sizeInBytes    = item.getSize(); 

					if( sizeInBytes <= 15000 ){
						
						File uploadedFile   = new File( path + "banner" + DbBean.codigo_banner + ".gif" ); 
              			item.write(uploadedFile); 
              			
              			long time_2 = new Date().getTime(); 	
        				message = "Tempo: "+ ((double) (time_2 - time_1) / 1000) + " Segundo(s)</p>";
					}
					else{
						
						message = "O arquivo a ser carregado nao pode ultrapassar 15Kb</p>";
					}
               		
            	} 
         	} 
         	
        	
        	out.println("<html>");
			out.println("<body>");
			
			
			out.println("<p align="center"><font size="4" color="#003366"><b>Arquivo Carregado<br>");
			out.println( message );
			out.println("<p align="center"><font size="2" color="#003366" face="MS Sans Serif"><b><a href="javascript:window.close()">Fechar</a></p>");
			
			out.println("</body>");
			out.println("</html>");
        	
      }
      catch (FileUploadException e) { 
         
         e.printStackTrace(); 
         getMostra( e.getStackTrace() );
     }
      catch (Exception e) { 
      
         e.printStackTrace(); 
         getMostra( e.getStackTrace() );
     }

E quando eu gero o upload da este erro aqui.

java.io.FileOutputStream.open(Native Method)
java.io.FileOutputStream.(FileOutputStream.java:179)
java.io.FileOutputStream.(FileOutputStream.java:131)
org.apache.commons.fileupload.DefaultFileItem.write(DefaultFileItem.java:392)
com.classes.criativa.FileUploadServlet.doPost(FileUploadServlet.java:52)
javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:98)
org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:176)
java.security.AccessController.doPrivileged(Native Method)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:172)
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2422)
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171)
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:163)
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
LocaWebValve.invoke(LocaWebValve.java:101)
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
org.apache.ajp.tomcat4.Ajp13Processor.process(Ajp13Processor.java:457)
org.apache.ajp.tomcat4.Ajp13Processor.run(Ajp13Processor.java:576)
java.lang.Thread.run(Thread.java:534)
lcsoftware

Ai galera me uma força ai tenho que entregar isso ate sabado, ja nao to nem dormindo atras da solução, entrei em contato com o pessoal da hospedagem pra ver se era permissao mas nao é nao, seria o meu path, pois o erro ocorre na linha 52 onde dou um .write, ali no getServletContext().getRealPath("/") ele pega o caminho completo. Ja nao tenho mas ideias…, preciso de um upload rapido, mas se nao tiverem ideia, ta joia, to procurando ainda.

A

Você está colocando o endereço de IP válido no caminho? \200…? Eu posso te passar um código meu me passa seu e-mail pq tem uns componentes.

Criado 29 de setembro de 2004
Ultima resposta 1 de out. de 2004
Respostas 5
Participantes 4