Ho un'entità denominata EmployeeDepartment come di seguitoprimavera dati REST @Idclass non riconosciuto
@IdClass(EmployeeDepartmentPK.class) //EmployeeDepartmentPK is a serializeable object
@Entity
EmployeeDepartment{
@Id
private String employeeID;
@Id
private String departmentCode;
---- Getters, Setters and other props/columns
}
e ho un Data Repository primavera definito come di seguito
@RepositoryRestResource(....)
public interface IEmployeeDepartmentRepository extends PagingAndSortingRepository<EmployeeDepartment, EmployeeDepartmentPK> {
}
Inoltre, ho un convertitore registrata per convertire da String a EmployeeDepartmentPK.
Ora, per un'entità, qualificata da ID employeeID = "abc123" e departmentCode = "JBG", mi aspetto che l'ID da utilizzare quando viene chiamata l'interfaccia SDR sia abc123_JBG. Ad esempio, http://localhost/EmployeeDepartment/abc123_JBG dovrebbe portarmi il risultato e in effetti lo fa.
Tuttavia, quando provo a salvare un'entità utilizzando PUT, la proprietà ID disponibile nella classe BasicPersistentEntity di Spring Data Commons ha un valore di abc123_JBG per departmentCode. Questo è sbagliato. Non sono sicuro se questo è un comportamento previsto.
Per favore aiuto.
Grazie!
ho seguito questa proposta solo per inciampare su come creare un embeddedId da una richiesta di posta. Vedi: http://stackoverflow.com/questions/36606251/spring-data-rest-embeddedid-cannot-be-constructed-from-post-request – Gregor