Возврат объекта JSON или String из метода JAX-RS в зависимости от параметра запроса - PullRequest
3 голосов
/ 01 марта 2012

У меня есть сервлет JAX-RS, и я хотел бы вернуть объект JSON для запросов GET по URL-адресу /upgrade/somePath, а String для запросов GET - по /upgrade/somePath?count=true.Моя проблема в том, что этот метод не может возвращать два разных типа в зависимости от параметра запроса.Я пытался сопоставить другой метод с определенным URL @Path("/upgrade/somePath?count=true"), но Джерси не был рад этому.

@Path("upgrade")
public class UpgradeMock
{
    @GET
    @Path("somePath")
    @Produces(MediaType.APPLICATION_JSON)
    public UpgradePackageList getPackages(@QueryParam("count") Boolean count)

1 Ответ

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

Насколько я знаю, вы не можете достичь этого, используя Джерси. Если такой способ работы является обязательным (то есть спецификацией), вы должны изменить свой метод, чтобы он возвращал String и взять сериализацию JSON в свои руки, вызвав сериализатор JSON Джексона вручную.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...