У меня есть объект Job, как показано ниже.
@Entity
@Getter
@Setter
@NoArgsConstructor
@Immutable
@ToString
@JsonIgnoreProperties({"hibernateLazyInitializer", "handler"})
@Table(name = "JOB")
public class Job extends BaseEntity implements IEntity, IDto {
@Id
@Column(name = "JOB_ID", unique = true, nullable = false)
private Long id;
@Column(name = "PRINT_JOB_ID", length = 30)
private String printJobId;
@OneToMany(fetch = FetchType.LAZY)
@JoinColumn(name = "PRINT_JOB_ID", nullable = false, insertable = false, updatable = false)
private Set<PrintFile> printFileInfos = new HashSet<PrintFile>();
}
У меня также есть другой объект PrintFile.
@Entity
@Getter
@Setter
@NoArgsConstructor
@Immutable
@Table(name = "PRINT_FILE")
public class PrintFile implements Serializable {
@Id
@Column(name = "FILE_ID", unique = true, nullable = false, length = 50)
private String fileId;
@Column(name = "PRINT_JOB_ID", nullable = false, length = 30)
private String printJobId;
}
Вот мои столы.
Job
JOB_ID NOT NULL NUMBER
PRINT_JOB_ID VARCHAR2(30)
Print_File
PRINT_JOB_ID NOT NULL VARCHAR2(30)
FILE_ID NOT NULL VARCHAR2(50)
При попытке получить данные о задании с помощью API-интерфейса загрузки Sprint появляется сообщение об ошибке java.sql.SQLSyntaxErrorException: ORA-01722: invalid number
. Кажется, все сопоставления типов данных верны, что еще могло пойти не так?
EDIT:
Сущность Job извлекается без проблем, когда я избавляюсь от соединения. то есть полное объявление printFileInfos в объекте Job. Это заставляет меня думать, что проблема либо в соединении, либо в сущности PrintFile.