Я пытаюсь отправить JSON, содержащий массив изображений:
{
Title: "Hello",
images: [
{
fileName: "hello",
data: "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAA..."
}
]
}
и сохранить его в этой сущности в Spring + Hibernate:
@Entity
@Table(name = "flat")
public class Flat {
private Title;
@OneToMany(fetch = FetchType.LAZY,
cascade = CascadeType.ALL,
mappedBy = "flat")
private List<File> images = new ArrayList<>(); //see the File entity below
...
Вот сущность файла:
@Entity
@Table(name = "file")
public class File {
@ManyToOne(fetch = FetchType.LAZY, optional = false)
@JoinColumn(name = "flat_id")
private Flat flat;
@Lob
private byte[] data;
...
(оба объекта имеют поле идентификатора)
Итак, все работает, когда поле «data» в «images» пусто. В противном случае я получаю сообщение об ошибке весной:
JsonMappingException: Invalid UTF-8 start byte 0x80
Я видел похожий вопрос здесь ( JSON-синтаксический анализатор JSON недопустимый начальный байт utf-8 ), и там был ответ о неправильных кодировках, но я все еще не могу понять, как я могу решить его в моем случае .