All my entities inherit from a class named EntidadeBase:
@MappedSuperclass
public abstract class EntidadeBase implements Serializable {
private static final long serialVersionUID = -3912856473903279467L;
@Id
@QueryParam("id")
@GeneratedValue(strategy = GenerationType.IDENTITY)
@PodamStrategyValue(value = NullStrategy.class)
private Long id;
@Column(name = "cadastro_data", nullable = false)
@PodamStrategyValue(value = PastDateStrategy.class)
private LocalDate dataCadastro;
@Column(name = "modificado_data", nullable = false)
@PodamStrategyValue(value = PastDateStrategy.class)
private LocalDate dataModificacao;
@QueryParam("modificado")
@Column(nullable = false)
@PodamBooleanValue(boolValue = false)
private Boolean modificado;
@QueryParam("ativo")
@Column(nullable = false)
@PodamBooleanValue(boolValue = true)
private Boolean ativo;
}
Its a JAX-RS/Jersey Webservice deployed on tomcat 8 that actually use default Jersey impl for POJO binding: MOXy.
My problem is that, for example, when I send a PUT request with a JSON entity inside it, the EntidadeBase fields are not parsed to my EndPoint object
Heres an example:
@PUT
@Override
@Transactional(qualifier = ForTransaction.class)
public Response atualizar(@NotNull Abrangencia entidade) {
return super.atualizar(entidade);
}
How can I manage to make MOXy parse JSON values to the fields of the inherited superclasses?