JAX-RSでは、ユーザーがファイルをダウンロードするには、メソッドに `@Produces(" text/plain ")`でアノテーションを付けます:
-
@Produces( "text/plain") をサービスメソッドに入れ、
Response
戻り値の型。これは、出力がテキストファイルであることを意味します。
-
ブラウザのポップアップに応答ヘッダに " Content-Disposition "を設定する
ユーザーがダウンロードするためのダウンロードボックス。
JAX-RSでファイルをダウンロードする
JAX-RSでテキストファイルをダウンロードする完全な例を参照してください。
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();
}
}
デモ
JAX-RSサービスの上に展開し、このURIパターン「 /file/get 」にアクセスします。
Figure:サーバーからのテキストファイル " c:\\ test.log "は、新しいファイル名 " file from server.log "
ソースコードをダウンロードする
ダウンロード - リンク://wp-content/uploads/2011/07/JAX-RS-Download-TextFile-Example.zip[JAX-RS-Download-TextFile-Example.zip](6 KB)
参考文献
@Produces JavaDoc]。 Wiki、MIMEの完全なリスト