У меня есть пользовательский класс данных:трикотажа - использовать пользовательский класс в URI ресурса
public static class Data {
...
}
Я хочу использовать этот класс в URI ресурса в Джерси. Например:
@Path("test")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public class ResourceTest {
@GET
@Path("/data-{data}")
public Response get(@PathParam("data") final Data data) {
...
}
}
Возможно ли это? Думаю, мне нужно ввести какой-то конвертер, который преобразует текстовое представление Data
в экземпляр Data
. Я смотрел в документации, но пока не нашел полезного.
Ofcourse, я могу изменить это:
@Path("test")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public class ResourceTest {
@GET
@Path("/data-{data}")
public Response get(@PathParam("data") final String input) {
final Data data = convert(input);
...
}
}
Но я предпочел бы сделать бы преобразование других/автомагически WRT. ресурс.
Не знаете, зачем вам нужен класс для представления данных в GET? Обычно вас интересуют только '@ PathParam' или' @ QueryParam'. – Qwerky
Меня все еще интересует '@ PathParam', как вы можете видеть в примере. Мне просто нужно преобразовать из текстового представления определенного класса в экземпляр фактического класса. Если возможно, я хотел бы иметь это преобразование вне реализации ресурсов. –