[Resolvido](O sistema não pode encontrar o arquivo especificado) + fileDownload

2 respostas
java
A

Pessoal, estou tentando fazer o download pelo fileDownload do primefaces e ta dando erro:
Consegui fazer o upload(ele cria uma pasta com um nome e coloca os arquviso dentro dela).
Vou colocar os codigos do download aqui

public StreamedContent getFile() throws FileNotFoundException {  
	      
	        FileInputStream stream = new FileInputStream("C:\\arquivos_tecnico_sig\\");
	        file = new DefaultStreamedContent(stream, "C:\\arquivos_tecnico_sig\\",getDocumentoTecnico().getNome()); 
	        return file;  
	  }
<p:column width="4%">
				<p:commandButton value="Download" ajax="false">
						<p:fileDownload value="#{documentoTecnicoBean.file}"/>
						<f:setPropertyActionListener target="#{tecnicoSessaoBean.nomeDocumento}" value="#{documentoTecnico.nome}"/>
				</p:commandButton>
			</p:column>

erro:

AVISO: /pages/restrito_tecnico/lista_documento.xhtml @70,61 value="#{documentoTecnicoBean.file}": Error reading file on type tecnico.web.DocumentoTecnicoBean

javax.el.ELException: /pages/restrito_tecnico/lista_documento.xhtml @70,61 value="#{documentoTecnicoBean.file}": Error reading file on type tecnico.web.DocumentoTecnicoBean

at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:111)

at org.primefaces.component.filedownload.FileDownloadActionListener.processAction(FileDownloadActionListener.java:52)

at javax.faces.event.ActionEvent.processListener(ActionEvent.java:84)

at javax.faces.component.UIComponentBase.broadcast(UIComponentBase.java:773)

at javax.faces.component.UICommand.broadcast(UICommand.java:296)

at javax.faces.component.UIData.broadcast(UIData.java:912)

at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:781)

at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1246)

at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:77)

at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:97)

at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:114)

at javax.faces.webapp.FacesServlet.service(FacesServlet.java:310)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)

at org.primefaces.webapp.filter.FileUploadFilter.doFilter(FileUploadFilter.java:79)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)

at requisicao.web.filter.ConexaoHibernateFilter.doFilter(ConexaoHibernateFilter.java:34)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:344)

at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:110)

at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:84)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)

at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:98)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)

at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:95)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)

at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:79)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)

at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:55)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)

at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:36)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)

at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:188)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)

at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:106)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)

at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)

at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:150)

at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)

at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:225)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)

at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)

at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)

at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)

at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1001)

at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:585)

at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)

at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)

at java.lang.Thread.run(Thread.java:662)

Caused by: java.io.FileNotFoundException: C:\arquivos_tecnico_sig (Acesso negado)

at java.io.FileInputStream.open(Native Method)

at java.io.FileInputStream.(FileInputStream.java:120)

at java.io.FileInputStream.(FileInputStream.java:79)

at tecnico.web.DocumentoTecnicoBean.getFile(DocumentoTecnicoBean.java:174)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

at java.lang.reflect.Method.invoke(Method.java:597)

at javax.el.BeanELResolver.getValue(BeanELResolver.java:87)

at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:67)

at com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:71)

at com.sun.el.parser.AstValue.getValue(AstValue.java:116)

at com.sun.el.parser.AstValue.getValue(AstValue.java:163)

at com.sun.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:219)

at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:106)

 58 more

2 Respostas

A

Fiz uma modificacao no metodo do Bean. ficou assim

public StreamedContent getFile() throws FileNotFoundException {  
	      
		  
		  	String caminho="C:\\arquivos_tecnico_sig\\"+getDocumentoTecnico().getNome()+"\\";
		  	String arquivo=""+getDocumentoTecnico().getNome()+"";
		  	
	        FileInputStream stream = new FileInputStream(caminho);
	        file = new DefaultStreamedContent(stream, caminho, arquivo);
	        return file;  
	  }

o erro mudou também!

java.io.FileNotFoundException: C:\arquivos_tecnico_sig\null (O sistema não pode encontrar o arquivo especificado)

at java.io.FileInputStream.open(Native Method)

at java.io.FileInputStream.(FileInputStream.java:120)

at java.io.FileInputStream.(FileInputStream.java:79)

at tecnico.web.DocumentoTecnicoBean.getFile(DocumentoTecnicoBean.java:178)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

at java.lang.reflect.Method.invoke(Method.java:597)

at javax.el.BeanELResolver.getValue(BeanELResolver.java:87)

at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:67)

at com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:71)

at com.sun.el.parser.AstValue.getValue(AstValue.java:116)

at com.sun.el.parser.AstValue.getValue(AstValue.java:163)

at com.sun.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:219)

at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:106)

at org.primefaces.component.filedownload.FileDownloadActionListener.processAction(FileDownloadActionListener.java:52)

at javax.faces.event.ActionEvent.processListener(ActionEvent.java:84)

at javax.faces.component.UIComponentBase.broadcast(UIComponentBase.java:773)

at javax.faces.component.UICommand.broadcast(UICommand.java:296)

at javax.faces.component.UIData.broadcast(UIData.java:912)

at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:781)

at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1246)

at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:77)

at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:97)

at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:114)

at javax.faces.webapp.FacesServlet.service(FacesServlet.java:310)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)

at org.primefaces.webapp.filter.FileUploadFilter.doFilter(FileUploadFilter.java:79)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)

at requisicao.web.filter.ConexaoHibernateFilter.doFilter(ConexaoHibernateFilter.java:34)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:344)

at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:110)

at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:84)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)

at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:98)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)

at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:95)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)

at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:79)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)

at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:55)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)

at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:36)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)

at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:188)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)

at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:106)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)

at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)

at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:150)

at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)

at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:225)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)

at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)

at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)

at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)

at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1001)

at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:585)

at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)

at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)

at java.lang.Thread.run(Thread.java:662)
A

REsolvido:

public StreamedContent getFile() throws FileNotFoundException {  
		  
		  	FacesContext context = FacesContext.getCurrentInstance();
		 	
		  		System.out.println(context.getExternalContext().getRequestParameterMap().get("nomeDoc"));
		 
		 		InputStream stream = new FileInputStream("C:\\arquivos_tecnico_sig\\"+context.getExternalContext().getRequestParameterMap().get("nomeDoc")+".zip");  
		 		file = new DefaultStreamedContent(stream, "application/zip", ""+context.getExternalContext().getRequestParameterMap().get("nomeDoc")+".zip");  
		 		
			
				
		return file;
		
		}
Criado 19 de janeiro de 2016
Ultima resposta 28 de jan. de 2016
Respostas 2
Participantes 1