我只是使用Java中的REST API向附近的StackOverflow上传XML或CSV文件的社区寻求帮助。
网址:
Remote Address:127.0.0.1:8080
Request URL:http://localhost:8080/HSMV5/api/import
Request Method:POST
请求播放:
------WebKitFormBoundaryTnLhEykB6lreFMtz
Content-Disposition: form-data; name="aaaa.xml"; filename="aaaa.xml"
Content-Type: text/xml
------WebKitFormBoundaryTnLhEykB6lreFMtz--
这是我的源代码:
@Path("/")
@Produces(MediaType.APPLICATION_JSON)
@Consumes({ MediaType.APPLICATION_JSON, MediaType.MULTIPART_FORM_DATA })
public class Dispatcher {
@POST
@Path("/import")
public Response importpostFile(
@FormDataParam("file") InputStream uploadedInputStream,
@FormDataParam("file") FormDataContentDisposition fileDetail)
throws HsmRestServiceException {
System.out.println(fileDetail.getFileName());
return importFile.doPost(null);
}
}
编译变量的返回null:
uploadedInputStream : null
fileDetail : null
答案 0 :(得分:0)
名称(name="aaaa.xml"
)需要与@FormDataParam
中的值相同。这就是为什么它是空的,因为它是错的名字。 没有名称为file
我没有看到任何数据。数据应出现在这些行之间。
Content-Type: text/xml
------WebKitFormBoundaryTnLhEykB6lreFMtz--
这也是你需要弄清楚的事情。
答案 1 :(得分:0)
这是要使用的表单:
<tr class="pairRowTab">
<td>
<bean:message key="table.dateFormat"/>
</td>
<td>
<html:file property="dateFormatFile" size="70"/>
</td>
</tr>
<tr class="impairRowTab">
<td>
<bean:message key="table.separateur"/>
</td>
<td>
<html:file property="separateurFile" size="70"/>
</td>
</tr>