使用ajax从移动设备上传java格式的图像

使用ajax从移动设备上传java格式的图像,java,jquery,ajax,grails,Java,Jquery,Ajax,Grails,首先,我不使用jQueryMobile。 我想在tomcat7服务器上上传图像。 在桌面应用程序中,它可以正常工作,但当我移动时,它会导致错误: 没有方法的签名:org.springframework.security.web.servletapi.HttpServlet3RequestFactory$Servlet3SecurityContextHolderAwareRequestWrapper.getFile()适用于参数类型:(java.lang.String)值:[file] 这是我的j

首先,我不使用jQueryMobile。
我想在tomcat7服务器上上传图像。
在桌面应用程序中,它可以正常工作,但当我移动时,它会导致错误:

没有方法的签名:org.springframework.security.web.servletapi.HttpServlet3RequestFactory$Servlet3SecurityContextHolderAwareRequestWrapper.getFile()适用于参数类型:(java.lang.String)值:[file]

这是我的java代码:

// get the file to upload
def uploadFileInput = 'file'
MultipartFile sourceFile = request.getFile(uploadFileInput)
这是我的ajax:

$.ajax( {
    url        : createLink( {controller: 'fileManager', action: 'upload', id: Location.params.id, params: {domain: Location.controller, profile: true}} ),
    data       : new FormData( form[0] ),
    cache      : false,
    contentType: false,
    processData: false,
    success    : function( data ) {
        [...]
    },
    error      : function() {
        console.log( 'Upload canceled with errors' )
   }
} );
这是我的html:

<form enctype="multipart/form-data">
    <input type="file" name="file" accept="jpg,png,gif" style="display: none">
</form>


我忘了什么吗?

它根本不应该这样工作,因为表单不包含文件内容文件内容?什么意思?
newformdata(表单[0])
不传递要由
request.getFile('file')
处理的文件。你什么也得不到,但在桌面上我得到一个文件。。。无论如何我应该用什么来代替呢?不确定“桌面”是什么意思,但在那里文件似乎包含在请求中,
$.ajax()
没有做什么