In this tutorial we will discuss about download text files from JAX-RS, for user to download a file, annotate the method with @Produces(“text/plain”) :
See a full example to download a text file in JAX-RS.
package com.dineshonjava.ws.rest;
import java.io.File;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.Response;
import javax.ws.rs.core.Response.ResponseBuilder;
/**
* @author Dinesh Rajput
*
*/
@Path("/salaryslipfile")
public class EmployeeSalarySlip {
private static final String FILE_PATH = "d:salary.log";
@GET
@Path("/get")
@Produces("text/plain")
public Response getSalarySlipFile() {
File file = new File(FILE_PATH);
ResponseBuilder response = Response.ok((Object) file);
response.header("Content-Disposition",
"attachment; filename="salary_slip_file.log"");
return response.build();
}
}
Deploy above JAX-RS service, access this URI pattern : “http://localhost:8181/sdnext/doj/salaryslipfile/get“.
Figure : Text file “d:salary.log” from server is prompt for user to download, with a new file name “salary_slip_file.log”
References
1. JAVA REST Web Services
2. Wikipedia for REST Web Service
Strategy Design Patterns We can easily create a strategy design pattern using lambda. To implement…
Decorator Pattern A decorator pattern allows a user to add new functionality to an existing…
Delegating pattern In software engineering, the delegation pattern is an object-oriented design pattern that allows…
Technology has emerged a lot in the last decade, and now we have artificial intelligence;…
Managing a database is becoming increasingly complex now due to the vast amount of data…
Overview In this article, we will explore Spring Scheduler how we could use it by…