我有一个RestService:
@POST
@Path("/insertDataInDB")
@Consumes(MediaType.MULTIPART_FORM_DATA)
public Response insertDataInDB(@FormDataParam("inputfile")
MultipartFormDataInput inputfile) {
do Stuff
}
该服务有效,我使用Chromes Rest Console进行了测试。
请求URI:
http://localhost:8080/persDB/rest/r/insertDataInDB
内容类型:
multipart/form-data
附件档案:
Test.xlsx
参数键:
inputfile
休息测试看起来如何?我试过这个 但我无法弄清楚,在哪里放置参数键等。
@HttpTest(method = Method.POST, path = "persDB/rest/r/insertDataInDB", content = "{}", type = MediaType.MULTIPART_FORM_DATA, file = "inputfile.xlsx")
public void insertDataInDB() {
do Stuff
}
我得到了一个java.io.IOException:
2014-02-04 16:01:30,825 [http-/0.0.0.0:8080-2] SEVERE org.jboss.resteasy.core.SynchronousDispatcher - Failed executing POST r/insertDataInDB: org.jboss.resteasy.spi.ReaderException: java.io.IOException: Unable to get boundary for multipart
答案 0 :(得分:0)
问题是当你设置" Content-Type = multipart / form-data"没有边界,服务器无法适当地读取表单数据。
其他服务器需要这样的东西: Content-Type = multipart / form-data;边界= MY_CUSTOM_BOUNDARY
或
Content-Type = multipart / form-data;边界= ----------------------------- 28947758029299
如果您想了解有关边界的更多信息,可以看到以下链接:[What is the boundary in multipart/form-data?
答案 1 :(得分:-1)