Note that there are some explanatory texts on larger screens.

plurals
  1. POblueimp jquery file upload Empty file upload result struts2, fileitems empty
    primarykey
    data
    text
    <p>I am using Blueimp and server side is Java, Struts2. I couldn't find examples using Java, anyway I managed to use the sample code, but I am getting <code>"Empty file upload result"</code> when I am trying to upload a single file also. The HTML part is the same, I am not pasting here as it may go lengthy. </p> <p><strong>The jQuery is:</strong></p> <pre><code>$(document).ready(function () { 'use strict'; // Initialize the jQuery File Upload widget: $('#fileupload').fileupload(); // Enable iframe cross-domain access via redirect option: $('#fileupload').fileupload( 'option', 'redirect', window.location.href.replace( /\/[^\/]*$/, '/cors/result.html?%s' ) ); if (window.location.hostname === 'blueimp.github.com') { // Demo settings: $('#fileupload').fileupload('option', { url: '//jquery-file-upload.appspot.com/', maxFileSize: 5000000, acceptFileTypes: /(\.|\/)(gif|jpe?g|png)$/i, process: [ { action: 'load', fileTypes: /^image\/(gif|jpeg|png)$/, maxFileSize: 20000000 // 20MB }, { action: 'resize', maxWidth: 1440, maxHeight: 900 }, { action: 'save' } ] }); // Upload server status check for browsers with CORS support: if ($.support.cors) { $.ajax({ url: '//jquery-file-upload.appspot.com/', type: 'HEAD' }).fail(function () { $('&lt;span class="alert alert-error"/&gt;') .text('Upload server currently unavailable - ' + new Date()) .appendTo('#fileupload'); }); } } else { // Load existing files: $('#fileupload').each(function () { var that = this; $.getJSON(this.action, function (result) { if (result &amp;&amp; result.length) { $(that).fileupload('option', 'done') .call(that, null, {result: result}); } }); }); } }); </code></pre> <p><strong>The action:</strong></p> <pre><code>@Namespace("/") @InterceptorRefs({ @InterceptorRef("fileUpload"), @InterceptorRef("basicStack") }) public class UploadAction extends ActionSupport implements ServletRequestAware, ServletResponseAware{ HttpServletRequest req; HttpServletResponse res; // private File fileUploadPath=new File("c:\\temp\\"); private List&lt;File&gt; uploads = new ArrayList&lt;File&gt;(); private List&lt;String&gt; uploadFileNames = new ArrayList&lt;String&gt;(); private List&lt;String&gt; uploadContentTypes = new ArrayList&lt;String&gt;(); public List&lt;File&gt; getUploads() { return uploads; } public void setUploads(List&lt;File&gt; uploads) { this.uploads = uploads; } public List&lt;String&gt; getUploadFileNames() { return uploadFileNames; } public void setUploadFileNames(List&lt;String&gt; uploadFileNames) { this.uploadFileNames = uploadFileNames; } public List&lt;String&gt; getUploadContentTypes() { return uploadContentTypes; } public void setUploadContentTypes(List&lt;String&gt; uploadContentTypes) { this.uploadContentTypes = uploadContentTypes; } @Action(value="upload", results = { @Result(name="success", type="json") }) public String uploadFiles() throws IOException { System.out.println("upload1"); System.out.println("files:"); for (File u: uploads) { System.out.println("*** "+u+"\t"+u.length()); } System.out.println("filenames:"); for (String n: uploadFileNames) { System.out.println("*** "+n); } System.out.println("content types:"); for (String c: uploadContentTypes) { System.out.println("*** "+c); } System.out.println("\n\n"); if (!ServletFileUpload.isMultipartContent(req)) { throw new IllegalArgumentException("Request is not multipart, please 'multipart/form-data' enctype for your form."); } return SUCCESS; } @Override public void setServletRequest(HttpServletRequest hsr) { this.req=hsr; } @Override public void setServletResponse(HttpServletResponse hsr) { this.res=hsr; } } </code></pre> <p>As I said, I have changed the action file, but I still get all empty values for files, and in the Firebug's GET response I see <code>"Request is not multipart, please 'multipart/form-data' enctype for your form"</code></p> <p>Thanks &amp; Regards. </p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload