Boa tarde pessoal !
Gostaria de saber se é possível enviar um arquivo direto para a pasta do Glassfish, tipo dentro da pasta:/web/UPLOAD/, pois preciso depois recuperar esse arquivo, justamente para não precisar de um servidor FTP, é possível isso ??? não ? alguma sugestão para enviar arquivos para o servidor, sem precisar de um servidor FTP???
Agradeço a todos pela atenção…vlww
para fazer upload para dentro do servidor
uma pasta como vc se referiu
primeira vc precisa ter implementado um upload na sua aplicação
[quote=tmvolpato]para fazer upload para dentro do servidor
uma pasta como vc se referiu
primeira vc precisa ter implementado um upload na sua aplicação
[/quote]
Já está implementando, inclusive consigo enviar para pasta do FTP, ex: /HOME/sistemaX/UP/, porém gostaria de recuperar esse arquivo pelo Glassfish, ou seja quero enviar direto para “dentro” do Glassfish, mas se tento colocar o caminho como: /web/UPLOAD(pasta criada dentro da pasta WEB) não da certo. teria alguma ideia de como fazer ???
OBS: segue os parametros:
web.xml
<filter-name>PrimeFaces FileUpload Filter</filter-name>
<filter-class>
org.primefaces.webapp.filter.FileUploadFilter
</filter-class>
<init-param>
<param-name>uploadDirectory</param-name>
<param-value>/web/UPLOAD/</param-value>
</init-param>
<init-param>
<param-name>thresholdSize</param-name>
<param-value>10000</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>PrimeFaces FileUpload Filter</filter-name>
<servlet-name>Faces Servlet</servlet-name>
</filter-mapping>
</web-app>
controller:
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package Utils;
import java.io.*;
import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.context.FacesContext;
import org.primefaces.event.FileUploadEvent;
import org.primefaces.model.DefaultStreamedContent;
import org.primefaces.model.StreamedContent;
import org.primefaces.model.UploadedFile;
/**
*
* @author felipehts
*/
@ManagedBean
@SessionScoped
public class FileUpload {
private StreamedContent file;
public void setFile(StreamedContent file) {
this.file = file;
}
public void processFileUpload(FileUploadEvent event) throws IOException {
try {
// Topicos.setNomearquivo(event.getFile().getFileName());
//Cria um arquivo UploadFile, para receber o arquivo do evento
UploadedFile arq = event.getFile();
InputStream in = new BufferedInputStream(arq.getInputstream());
//copiar para pasta do projeto
File file = new File("/web/UPLOAD" + arq.getFileName());
//O método file.getAbsolutePath() fornece o caminho do arquivo criado
//Pode ser usado para ligar algum objeto do banco ao arquivo enviado
String caminho = file.getAbsolutePath();
FileOutputStream fout = new FileOutputStream(file);
while (in.available() != 0) {
fout.write(in.read());
}
fout.close();
FacesMessage msg = new FacesMessage("Sucesso ", event.getFile().getFileName() + " foi enviado para o SatServidor.");
FacesContext.getCurrentInstance().addMessage(null, msg);
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
vc quer enviar do FTP de qualquer lugar (por exemplo) para dentro da sua aplicação?
Quero enviar através do meu sistema web para o glassifsh onde fica “hospedado” a aplicação; ex:
eu consigo visualizar pelo caminho abaixo a imagem do ico da aplicação:
http://sateliteinfo.redirectme.net:9090/FHTSistemas/images/logo4.ico
Gostaria de enviar o arquivo TESTE.exe, e poder baixar depois, por exemplo pelo caminho:
http://sateliteinfo.redirectme.net:9090/FHTSistemas/UPLOAD/TESTE.exe
tendeu ??