java - 在appengine中使用ajax上传文件时出现问题

标签 java ajax spring google-app-engine spring-mvc

我需要在 Google AppEngine 应用程序中使用 Ajax 将文件内容发送到 Spring webService。所以我用了jquery ajaxFileUpload plugin .

<form id="load_form" action="" enctype="multipart/form-data">       
    <input name="file" type="file" id="upload_files" value="Browse"/>
    <input type="button"" id="upload_file" value="Load file"/>
</form>

JavaScript 看起来像这样:

$("#upload_file").click(function(){

        $.ajaxFileUpload
        (
            {
                url: '/myproject/uploadFile.json',
                secureuri: false,
                fileElementId: 'upload_files',
                dataType: 'json',
                success: function (data, status) {
                    alert("OK");
                },
                error: function (data, status, e) {
                    alert("Error");
                }
            }
        );

        return false;
    });

在 Controller 中:

@RequestMapping(value="/uploadFile.json", method=RequestMethod.POST)
public Map<String, Object> readFile(
        @RequestParam(value = "file", required=false) MultipartFile file,
        Model model) throws Exception{
    ...
}

我遇到的问题是我没有在文件参数中接收文件内容(它始终为空),并且使用 firebug 我可以看到我正在名为“file”的参数中发送文件内容”。但是,尽管调用了此方法,但我没有收到它们(其中有一个断点,并且它停止在其中)。如果我从文件参数中删除 required=false ,则会出现 400 错误,因此看起来找不到文件参数。

我使用的是 Spring 3.0.4。

知道可能发生什么吗?

谢谢。

最佳答案

如果您在这种情况下注重结果,则可以使用 custom servlet .

关于java - 在appengine中使用ajax上传文件时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4920152/

相关文章:

java - Spring 安全。添加用户登录限制

java - JAXB动态添加元素

java - Neo4j HA(2.0-快照),等待集群选举master超时

php - 如何使用 AJAX 使用查询的最后一个 ID 进行查询?

java - Spring中如何保存配置设置?

java - run完成后调用线程对象方法

ruby-on-rails - Rails 4 无法验证 CSRF token 的真实性

javascript - 从服务器获取 POST 数据不起作用

java - Spring - 在找不到 bean 时注入(inject) null 而不是抛出异常

java - Spring返回List的正确方法是什么