согласно этому руководству Загрузка Base64 веб-службы REST Я пытаюсь загрузить из моего клиентского приложения несколько изображений, хранящихся в байтовом массиве, которые отправляются из моей службы REST.Файл ресурсов REST содержит:
//****RESTful Service****
@GET // HTTP GET request
@Path("get_pictures/{userid}")
@Produces( MediaType.APPLICATION_OCTET_STREAM )
// Gets all the pictures for the report
public Response getReportPictures(@PathParam("userid") int userid) {
return wsmanager.getReportPictures(userid);
}
В приведенном ниже методе getReportPicture () я сериализую изображения и сохраняю их в ArrayList, который я хочу вернуть через вышеуказанный сервис REST.Класс Image - одна из моих возможностей для сериализации и десериализации изображений.Процесс сериализации и возвращение ArraList byte [] работает хорошо.
//**** getReportPicture() method *****
ArrayList<byte[]> pictures = new ArrayList<byte[]>();
...
Response response = null;
...
byte[] img = Image.serialize(strPictureFile);
pictures.add(img);
...
ResponseBuilder builder = Response
.ok( pictures, "image/jpg" )
.header( "Content-Disposition","inline; filename = \"" + name + "\"" );
response = builder.build();
return response;
В моем клиенте Java я пытаюсь прочитать содержимое из службы REST, которая не работает, реализуя приведенный ниже код:
WebTarget target = baseTarget.path("get_pictures/"+userid);
Response clResponse = target
.request(MediaType.APPLICATION_OCTET_STREAM)
.get();
String s = clResponse.readEntity(String.class);
Может кто-нибудь помочь, пожалуйста?.