Textdatei von JAX-RS herunterladen

Für den Benutzer zum Herunterladen einer Datei in JAX-RS die Methode mit @Produces ("text/plain") kommentieren:

  1. Put @ Erzeugt ("Text/Plain") nach Servicemethode mit einer "Antwort"

Rückgabetyp. Das bedeutet, dass die Ausgabe eine Textdatei ist.

  1. Legen Sie im Response-Header „ Content-Disposition “ fest, um das Browser-Popup anzuzeigen

eine Download-Box zum Herunterladen.

1. Datei in JAX-RS herunterladen

Ein vollständiges Beispiel zum Herunterladen einer Textdatei in JAX-RS finden Sie hier.

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;

@Path("/file")
public class FileService {

    private static final String FILE__PATH = "c:\\file.log";

    @GET
    @Path("/get")
    @Produces("text/plain")
    public Response getFile() {

        File file = new File(FILE__PATH);

        ResponseBuilder response = Response.ok((Object) file);
        response.header("Content-Disposition",
            "attachment; filename=\"file__from__server.log\"");
        return response.build();

    }

}

2. Demo

Stellen Sie über dem JAX-RS-Dienst bereit, greifen Sie auf dieses URI-Muster zu: " /file/get "

Abbildung: Die Textdatei " c: \\ test.log " vom Server fordert den Benutzer zum Herunterladen auf, mit einem neuen Dateinamen " file from__server.log "

Datei vom Server herunterladen

Quellcode herunterladen