【问题标题】:How to resolve an exception related to rest api POST request?如何解决与 rest api POST 请求相关的异常?
【发布时间】:2018-05-23 06:13:54
【问题描述】:

我有一个来自 Angular 5 应用程序的电话:

const httpOptions = {
    headers: new HttpHeaders({ 'Accept': 'application/json', 'Content-Type': 'application/json' })
};
...
 addTrip(trip: Trip): Observable<any> {
    return this.http.post(`${this.baseUrl}/Trips/Trip`, JSON.stringify(trip), httpOptions);
  }

java代码是使用rest api的seam组件:

@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();
}

尝试向服务器发送 POST 请求时出现异常(tomcat - java 7):

java.lang.AbstractMethodError: javax.ws.rs.core.Response.getStatusInfo()Ljavax/ws/rs/core/Response$StatusType

tomcat 日志:

0:0:0:0:0:0:0:1 - - [23/May/2018:16:07:12 +1000] “选项 /jboss-seam/seam/resource/rest/Trips/Trip HTTP/1.1" 200 - 0:0:0:0:0:0:0:1 - - [23/May/2018:16:07:12 +1000]“发布 /jboss-seam/seam/resource/rest/Trips/Trip HTTP/1.1" 500 1386

我无法让这个调用正常工作,我也尝试过 PUT,但我知道 put 用于更新,并且因为 id 是在服务器端创建的,所以我使用了 post。知道如何解决这个问题吗? (我能够在同一个服务中使用 GET 注释而没有问题)。

【问题讨论】:

  • 欢迎来到 StackOverflow ,请阅读How to Ask questions
  • 您在服务器中遇到错误。抱歉,但这不是 Angular 问题
  • 看看你的tomcat日志

标签: java rest seam seam2


【解决方案1】:

通过将 resteasy jar 更新到版本 2.1.0 解决了这个问题。 对于遇到类似问题的任何人。 将 2.1.2 与 resteasy 2.1 结合起来。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-07-14
    • 2018-08-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-27
    • 2019-07-07
    相关资源
    最近更新 更多