У меня есть dto, использующее перечисление (назовем это Сравнением):
public enum Comparison {
comparisonA, comparisonB, comparisonC, comparisonD
}
и
public class ComparisonDto {
public Comparison operator;
public Integer value;
// with getter and setter
}
Это прекрасно работает при компиляции с моим компьютером, но у других разработчиков возникает проблема : используемое значение сравнения больше не распознается. json находится в следующей форме при вызове пути:
{
"value" : 10,
"operator" : "comparisonA"
}
Наиболее распространенная ошибка в этом случае - «нераспознанный тип данных». Например, API имеет следующую форму:
@Path("/path-to-call")
@Consumes({ MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML })
@Produces({ MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML })
public interface ApiRs {
@POST
@Path("/")
@Produces(MediaType.APPLICATION_JSON)
ResponseStatus create(ComparisonDto comparisonDto);
}
Spring не используется.