私はAJAXにかなり慣れていません。AJAXを使用してサーバーにリクエストを送信しています。サービスはテキストファイルを返します。ただし、データが返されるときにダウンロードボックスは表示されません。ファイルを返すRESTサービスは次のとおりです。
@Path("/examples")
public class ExampleCodesRest {
@POST
@Path("/getcode")
@Produces(MediaType.TEXT_PLAIN)
public Response getCodes(@Context ServletContext context){
String in=context.getRealPath("/WEB-INF/reports.jrxml");
File file=new File(in);
ResponseBuilder response = Response.ok((Object) file);
response.header("Content-Disposition",
"attachment; filename=\"file_from_server.log\"");
return response.build();
}
}
私のAJAX呼び出しは次のとおりです。
$('a#link').click(function(event){
event.preventDefault();
$.ajax({
url: '/reports/rest/examples/getcode',
type: 'POST'
});
});
ファイルはAJAXなしで正常にダウンロードされます。AJAXではファイルをダウンロードしません。アドバイスをお願いします。