У меня есть следующий код из углового компонента 5:
export class TripsComponent implements OnInit {
...
...
addTrip() {
let newTrip = new Trip(this.new_trip_name,
this.new_trip_description, this.company);
this.tripService.addTrip(newTrip).toPromise();
}
//The company object is initialize inside ngOnInit()
Служба поездки выглядит следующим образом:
addTrip(tripTemp: Trip): Observable<any> {
let tripObj = {
trip: tripTemp
};
console.log('Adding trip ' + JSON.stringify(tripObj));
return this.http.post(`${this.baseUrl}/Trips/Trip`, JSON.stringify(tripObj), httpOptions);
}
API Java rest выглядит следующим образом:
@POST
@Path("Trip")
@Produces("application/json")
@Consumes("application/json")
public Response addTrip(Trip trip) {
tripDao.addTrip(trip);
return Response.ok().entity("Trip added successfully").build();
}
Объект компании в поездке аннотируется как XmlTransit (не уверен, если это вызывает проблему):
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "company_id", nullable = false)
@XmlTransient
public Company getCompany() {
return this.company;
}
Проблема заключается в том, что объект компании приходит как NULL, и это требуетполе для сохранения объекта Trip.Есть идеи, как разрешить автоматическое преобразование для этого внутреннего объекта?Заранее спасибо.