2017-01-20 119 views
0

我嘗試使用檢票模態窗口設置實體的PropertyModel。問題是,這個實體有一個FIleUploadFields,我讀Ajax非工作很好。我需要在模態中使用AjaxSubmitLink,並且我無法正常工作。如何使用檢票口在模態內上傳文件

setMultiPart(true); 

setMaxSize(Bytes.megabytes(100)); 

fileUpload = new FileUploadField("fileUpload"); 

fileUpload.setOutputMarkupId(true); 
fileUpload.setOutputMarkupPlaceholderTag(true); 
add(fileUpload); 

save_btn = new AjaxLink("save_btn") { 

      @Override 
      public void onClick(AjaxRequestTarget art) { 


       final FileUpload uploadedFile = fileUpload.getFileUpload(); 
       if (uploadedFile != null && uploadedFile.getSize() > 0) { 
        try { 
         if (GestioneDocumentiDcs.isTextDocument(uploadedFile)) { 
          String ext = GestioneDocumentiDcs.getTextExtension(uploadedFile.getContentType()); 

          String nomeFile = "c_" + _corso.getId() + "_m_" + materialeCorso.getId() + ext; 
          byte[] b = ByteStreams.toByteArray(uploadedFile.getInputStream()); 
          gd.salvaFile(b, gd.getPathCorso(_corso) + "/" + nomeFile); 
          materialeCorso.setPercorso(nomeFile); 
          materialeCorso.setDimensione(uploadedFile.getSize()); 
          materialeCorso.setDataUpload(LocalDate.now()); 
         } 
        } catch (Exception e) { 
         System.out.println("ERRORE: " + Utils.StampaStackError(e)); 
        } 
       } 

這是我的代碼模態

回答

0

AjaxLink內不提交表單,所以什麼也不會傳送到服務器。您需要AjaxButtonAjaxSubmitLink

+0

謝謝。有用 –

相關問題