使用resteasy将javascript文件转换为java字节[]
我尝试将文件从angularJS前端上传到jboss后台,但在调用服务时,我得到了以下示例:使用resteasy将javascript文件转换为java字节[],javascript,java,file,upload,resteasy,Javascript,Java,File,Upload,Resteasy,我尝试将文件从angularJS前端上传到jboss后台,但在调用服务时,我得到了以下示例: Caused by: com.fasterxml.jackson.databind.JsonMappingException: Can not deserialize instance of byte[] out of START_OBJECT token at [Source: io.undertow.servlet.spec.ServletInputStreamImpl@1cc8ac9f; lin
Caused by: com.fasterxml.jackson.databind.JsonMappingException: Can not deserialize instance of byte[] out of START_OBJECT token
at [Source: io.undertow.servlet.spec.ServletInputStreamImpl@1cc8ac9f; line: 1, column: 39] (through reference chain: fr.test.Document["datas"
])
我想当我将javascript文件转换为java字节[]时,可能有问题,但我真的不知道是什么
我通过常规输入type=“file”收集文件:
最后,使用rest服务调用backoffice。这里是我的后台服务声明:
@POST
@Path("/uploadFile")
@Consumes(MediaType.APPLICATION_JSON)
public void uploadFile(Document document) {
LOGGER.info("upload document !");
}
以及包含相同属性的文档对象:
public class Document {
private byte[] datas;
private String name;
private String type;
public byte[] getDatas() {
return datas;
}
public void setDatas(byte[] datas) {
this.datas = datas;
}
...
如果我对控制器(字节部分)中的“ctrl.doc=document;”行进行注释,服务将正常工作
我错过了什么?我真的可以这样发送文件吗
@POST
@Path("/uploadFile")
@Consumes(MediaType.APPLICATION_JSON)
public void uploadFile(Document document) {
LOGGER.info("upload document !");
}
public class Document {
private byte[] datas;
private String name;
private String type;
public byte[] getDatas() {
return datas;
}
public void setDatas(byte[] datas) {
this.datas = datas;
}
...