2017-02-10 4 views
0

Я использую Camel Rest DSL для создания моего сервиса отдыха, но, похоже, он не распознает аннотацию JsonProperty.Camel Rest DSL не распознает доступ JsonProperty

У меня есть Собственость как:

class Test { 

    private int id; 

    @JsonProperty(access = Access.READ_ONLY) 
    private String text; 
} 

и определение остальное:

<rests xmlns="http://camel.apache.org/schema/spring"> 
    <rest consumes="application/json" produces="application/json" path="/api/v1"> 
     <post bindingMode="json" type="Test" uri="/path"> 
      <route> 
       ..... 
      </route> 
     </post> 
    </rest> 
</rests> 

Когда я называю его:

{ 
    "id":2, 
    "text":"asd" 
} 

Текстовое поле также получение инициализируется.

Что мне не хватает?

Thx

ответ

0

Существовал ошибка в Джексоне @JsonProperty (доступ = Access.READ_ONLY). Для получения дополнительной информации, пожалуйста, обращайтесь: https://github.com/FasterXML/jackson-databind/issues/935

Есть два способа решения, упомянутые в сообщении об ошибке:

  • «Единственное, что помогает это создать сеттер и аннотировать его с @JsonIgnore»
  • " @JsonIgnoreProperties (значение = "some_field", allowGetters = true, allowSetters = false) "
Смежные вопросы