我想通过REST使用java发送特定文件夹中的文件夹或文件列表作为对客户端的响应。我的服务器端是EJB。
我正在尝试使用以下代码。但是得到了FileNotFoundException
@GET
@Produces(MediaType.APPLICATION_OCTET_STREAM)
public Response getFiles() {
File file = new File("C:\Documents and Settings\Administrator\Desktop\MyFolder");
return Response.ok(file, MediaType.APPLICATION_OCTET_STREAM).build();
}
尝试使用以下代码。但是得到了NullPointerException
@GET
@Produces(MediaType.APPLICATION_OCTET_STREAM)
public Response getFiles() {
File file = new File("C:\Documents and Settings\Administrator\Desktop\MyFolder");
ResponseBuilder response = Response.ok(file.listFiles());
response.header("Content-Disposition", "inline; filename=units.zip");
return response.build();
}
在Windows机器上工作。
任何人都可以给我任何建议,或者符合工作代码的例子吗?
答案 0 :(得分:0)
在文件名中使用正斜杠或双反斜杠。
另外,不要指望文件夹自动压缩。您必须创建ZIP存档并将其传递给Response
。