2013-12-05 4 views
0

Я создаю приложение, и у меня есть изображение моих клиентов. Как я могу получить это изображение и загрузить в ftp?Загрузить изображение на ftp?

Чтение книги vaadin7 в разделе Загрузка. Я сделал пример, но не работал, и я ищу, как отправить это изображение на ftp.

Я попробовал это.

/** My UI */ 
    //foto 
    Image picture = new Image(); 
    picture.setWidth("128px"); 
    picture.setHeight("128px");  
    mainLayout.addComponent(foto); 

    //upload image picture 
    ImageUpload imageUp = new ImageUpload(picture); 
    Upload upload = new Upload(); 
    upload.setCaption("Find your picture"); 
    upload.setButtonCaption("Send");   
    upload.addSucceededListener(imageUp); 
    mainLayout.addComponent(upload); 


    /** class upload image picture */ 
    public class ImageUpload implements Receiver, SucceededListener{ 
     private File file; 
     private Image image;  

    public ImageUpload(Image image){ 
     this.image = image; 
     this.image.setVisible(false); 
    } 

    @Override 
    public void uploadSucceeded(SucceededEvent event) { 
     this.image.setVisible(true); 
     this.image.setSource(new FileResource(file)); 
    } 

    @Override 
    public OutputStream receiveUpload(String filename, String mimeType) { 
     FileOutputStream fos = null; 
     try{ 
      file = new File("/tmp/" + filename);    
      fos = new FileOutputStream(file);   
     }catch(final java.io.FileNotFoundException ex){ 
      new Notification("File not found \n", 
          ex.getLocalizedMessage(), 
          Notification.Type.ERROR_MESSAGE) 
          .show(Page.getCurrent()); 
     } 
     return fos; 

    } 
} 

Идея?

благодаря

+0

Возможно, это помогло бы: http://stackoverflow.com/questions/11739153/file-upload-in-java-through-ftp –

+1

делиться некоторыми подробностями о том, что не работает. Для уточнения: вы хотите загрузить изображение на ftp-сервер после того, как изображение было загружено на сервер «webapp»? – nexus

+0

@nexus. Когда клиент выбирает вашу картинку вместо этого, чтобы вставить ее в мою базу данных, я думаю, что лучше отправить его фотографию на ftp, и в моей базе данных вставьте только свое имя и отправьте свое изображение на свой адрес электронной почты. – FernandoPaiva

ответ

0

Чтобы дать ответ по нашему разговору в комментариях:

Загрузить изображение в папку на сервере с помощью компонента загрузки из Vaadin, как вы делали.

Вы знаете, как проверить расширение при загрузке, только пример .jpg?

Вы могли

  1. быстро & загрязнен: просто проверить, если имя файла заканчивается .jpg
  2. Determine мим тип загруженного файла
  3. сделать 1. 2 & (отвергнуть если файл не заканчивается на .jpg, в противном случае разрешить загрузку и повторную проверку загруженного файла с его типом mime)
Смежные вопросы