Upload para "dentro" do servidor Glassfish, tem como?

5 respostas
felipehts

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

5 Respostas

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

felipehts

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


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();
        }

    }

  
}
tmvolpato

vc quer enviar do FTP de qualquer lugar (por exemplo) para dentro da sua aplicação?

felipehts

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

felipehts

UP !

Criado 17 de agosto de 2012
Ultima resposta 19 de ago. de 2012
Respostas 5
Participantes 2