У меня есть следующий сервис в приложении angular 5:
const httpOptions = {
headers: new HttpHeaders({
'Accept': 'application/json',
'Content-Type': 'application/json'
})
};
addTrip(trip: Trip): Observable<any> {
console.log('Adding trip ' + JSON.stringify(trip));
return this.http.post(`${this.baseUrl}/Trips/trip/`, JSON.stringify(trip), httpOptions);
}
Поездка выглядит так (в угловом виде):
export interface Trip {
description: string;
}
Java-код представляет собой шовный компонент, который использует остальные API:
@Name("tripFacadeREST")
@Scope(ScopeType.EVENT)
@Path("Trips")
public class TripFacadeREST {
@In private TripDaoHibernateImpl tripDao;
...
@POST
@Path("Trip")
@Consumes("application/json")
public Response addNewTrip(Trip newTrip) {
tripDao.addTrip(newTrip);
return Response.ok().entity("trip added successfully").build();
}
Я не могу заставить этот вызов работать, я пробовал также поставить, но я понимаю, что установка предназначена для обновления, и поскольку идентификатор создается на стороне сервера, который я использовал в сообщении, сторона сервера не запускается. Любая идея, как решить эту проблему? (Я смог без проблем использовать аннотацию GET в той же службе).
subscribe
, чтобы сообщение вызывалось.this.http.post(url, JSON.stringify(trip), httpOptions).subscribe();
- person Eldho   schedule 21.05.2018