Рестлет ServerResource для двоичных данных - PullRequest
0 голосов
/ 04 марта 2012

Я могу отправлять двоичные данные из клиента Restlet следующим образом:

Representation representation = new InputRepresentation(new ByteArrayInputStream(bytes), MediaType.APPLICATION_OCTET_STREAM);
request.setEntity(representation);

Однако как я могу получить эти данные из рестлета ServerResouce?

Моей отправной точкой будет методс такой подписью?

@Put
    public MyCustomResponse AddNewDocument(Form data)
    {
     ...
    }

Но тогда как мне получить двоичный поток?

1 Ответ

0 голосов
/ 11 марта 2012

Попробуйте это:

    @Put(MediaType.APPLICATION_OCTET_STREAM)
    public MyCustomResponse AddNewDocument(Form data)
    {
     //...
    }

Если ваш клиент и сервер - java + restlet, я бы порекомендовал извлечь его из интерфейса, если это возможно. Таким образом, вы можете аннотировать интерфейс, как указано выше, и клиент и сервер будут использовать один и тот же тип носителя. Вот пример .

А вот документация для метода PUT: здесь. Хотя, похоже, это указывает на то, что вам не обязательно нужен полный тип пантомимы, поэтому вам, возможно, придется покопаться, чтобы найти его или зарегистрируйте его самостоятельно (хотя может показаться, что он уже зарегистрирован).

...