Можно ли получить параметр формы в виде байтового массива с Джерси?
Я попробовал следующее:
@Path("/someMethod")
@POST
@Produces(MediaType.TEXT_HTML)
@Consumes(MediaType.APPLICATION_FORM_URLENCODED)
public String someMethod(@FormParam("someParam") byte[] someParam)
{
return "";
}
Но получил эту ошибку:
SEVERE: The following errors and warnings have been detected with resource and/or provider classes:
SEVERE: Missing dependency for method public java.lang.String SomeClass.someMethod(byte[]) at parameter at index 0
SEVERE: Missing dependency for method public java.lang.String SomeClass.someMethod(byte[]) at parameter at index 0
SEVERE: Method, public java.lang.String SomeClass.someMethod(byte[]), annotated with POST of resource, class SomeClass, is not recognized as valid resource method.
Если я изменю байт [] на строку, все будет работать правильно.
Причина, по которой мне нужно получать данные в виде байта [], а не в виде строки, заключается в том, что данные могут кодироваться с использованием разных кодировок. Это зависит от документа HTML, который представляет данные, и мне нужно правильно декодировать данные на стороне сервера (кодировка кодировки передается в отдельном параметре).
Итак, если я смогу получить данные в виде байта [], это решит мою проблему. Любые другие решения также приветствуются.
Спасибо!