从客户端向服务器端发送<input type =“file”/>内容

时间:2015-01-15 15:25:19

标签: java javascript jquery jsp

我正在修改一个通过jsp表单控制实体维护的应用程序。没关系,但主要实体(Contrato)有自己的形式有很多其他维护,而我的客户不想在中间重定向,所以我必须通过modals / javascript和jquery更改所有jsp辅助维护。

到目前为止,当我正在尝试管理文件时,目前还没有任何问题:

在以前的jsp视图中,我有一个<form:input>

<form:input path ="documento" type="file" name="Documento"/>

然后,我有一个带有属性的辅助java类:

private MultipartFile documento;

这里在映射请求时完全接收到MultipartFile。

现在,我有一个使用<input>

进行此维护的模式
<input id="documento" name="documento" type="file" style="width: 100%">

如果我在java中请求documento,我会得到一个字符串:

C:\fakepath\file.ext

经过多次尝试后,使用FileReader我可以在变量中存储文件的URL

function handleFileSelect(event) {
    input = event.target;
    reader = new FileReader();

    reader.onload = function(e) {
        arrayBuffer = reader.result;
    }
}

现在调试,我可以看到arrayBuffer变量是:

  

数据:应用/ PDF; BASE64,JVBERi0xLjQKJbXtrvsKMyAwIG9iago8PCAvTGVuZ3RoIDQ ... QgMTAxMSAwIFIKICAgL0luZm8gMTAxMCAwIFIKPj4Kc3RhcnR4cmVmCjIxMTYzMgolJUVPRgo .....

哪个文件有效URL。但是当我尝试将其作为@RequestMapping发送到@RequestParam时:

@RequestParam(value="file",required=false,defaultValue="0") Object file,

http://localhost:8080/my/url/documentoSubmit?file=data%3Aap…MTQ2MSAwIFIKICAgL0luZm8gMTQ2MCAwIFIKPj4Kc3RhcnR4cmVmCjMwMTc4MgolJUVPRgo%3D...
  

无法加载资源:服务器响应状态为400(Petición错误)

如何将javascript URL发送到java服务器端以在DB中保留它?

0 个答案:

没有答案
相关问题