Ошибка метода службы REST для выставления счета с различными компонентами @BeanParam — «Нераспознанное поле»

#java #rest #jboss #jersey

Вопрос:

У меня есть такой сценарий:

  1. Класс бобовых
 public class BeanRequest {
    @QueryParam("id")
    private Long id;

    public Long getId() {
        return id;
    }
    public void setId(Long id) {
        this.id = id;
    }
}

public class OtherBeanRequest {
    @QueryParam("descr")
    private String descr;

    public Long getDescr() {
        return descr;
    }
    public void setDescr(String descr) {
        this.descr = descr;
    }
}
 
  1. Служба ОТДЫХА
 @PUT
@Path("/update")
public Response update(@Valid @BeanParam BeanRequest request1, @BeanParam OtherBeanRequest request2 ) {
        return Response.ok("OK").build();
}
 
  1. Проблема

Когда этот метод вызывается из интерфейса (или инструмента GoogleREST), распознаются только параметры, определенные в переменной «request1». Переменная «request2» игнорируется с ошибкой «Нераспознанное поле (пакет.OtherBeanRequest) ‘desc'».

Примечание 1: Тест с Арквиллианом работает нормально!

Примечание 2: ДОКУМЕНТ: https://eclipse-ee4j.github.io/jersey.github.io/documentation/latest/jaxrs-resources.html#d0e2545 обозначьте, что возможен метод make с различными бобами @BeanParam.

Мой сервер приложений-Jboss 7.2

Заранее спасибо.

Комментарии:

1. "Unrecognized field (package.OtherBeanRequest) 'desc' <- это не соответствует вашим парам имя "descr"

2. Спасибо, Пол, но это опечатка при написании этого поста. Я попытался использовать «descr», но это не удалось. Спасибо.