Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/392.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/rest/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 传递请求参数以删除rest中的请求_Java_Rest_Resteasy - Fatal编程技术网

Java 传递请求参数以删除rest中的请求

Java 传递请求参数以删除rest中的请求,java,rest,resteasy,Java,Rest,Resteasy,我正在使用resteasy。下面是删除资源的代码 @DELETE @Produces(MediaType.APPLICATION_JSON) @Consumes(MediaType.APPLICATION_JSON) @Path("/{id:\\d+}") public Response removeResource(@PathParam("id") int id){ ......................... .. code to delete resource and

我正在使用resteasy。下面是删除资源的代码

@DELETE
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
@Path("/{id:\\d+}")
public Response removeResource(@PathParam("id") int id){
    .........................
    .. code to delete resource and return Response object ..
    .........................
}
此代码运行良好。但当我试图传递一些参数来删除请求时。我收到
不受支持的MediaException

@DELETE
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
@Path("/{id:\\d+}")
public Response removeResource(@PathParam("id") int id, Map<String, Object> source){
    .........................
    .. code to delete resource and return Response object ..
    .........................
}
编辑:
来自服务器的堆栈跟踪

11:43:25,767 ERROR [org.jboss.resteasy.resteasy_jaxrs.i18n] (default task-7) RESTEASY002010: Failed to execute: javax.ws.rs.NotSupportedException: RESTEASY003065: Cannot consume content type
at org.jboss.resteasy.core.registry.SegmentNode.match(SegmentNode.java:382)
at org.jboss.resteasy.core.registry.SegmentNode.match(SegmentNode.java:116)
at org.jboss.resteasy.core.registry.RootNode.match(RootNode.java:43)
at org.jboss.resteasy.core.registry.RootClassNode.match(RootClassNode.java:48)
at org.jboss.resteasy.core.ResourceMethodRegistry.getResourceInvoker(ResourceMethodRegistry.java:445)
at org.jboss.resteasy.core.SynchronousDispatcher.getInvoker(SynchronousDispatcher.java:257)
at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:194)
at org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:221)
at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:56)
at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:51)
前端响应

Status Code: 415 Unsupported Media Type
Connection: keep-alive
Content-Length: 0
Date: Wed, 01 Jun 2016 06:13:25 GMT
Server: WildFly/10
x-powered-by: Undertow/1

您已请求内容类型为“application/json” 将AngularJS转换为文本/纯文本

如果您有足够新的AngularJS版本(1.1.3),您可以自定义资源对象,以包含您请求的内容类型。 您应该能够修改资源定义,以包含删除请求的内容类型

var r = $Resource(/rest/resources/1, {},
   remove:{
      method:"DELETE",
      isArray:false,
      headers:{'Content-Type':'application/json; charset=UTF-8'} 
   }
);

有关更多信息,请参见和

是否可以显示完整的StackTraceAl,因此某些服务器不支持带有DELETE的正文。尽管
UnsupportedMediaException
听起来像是一个RESTEasy异常,但是错误发生在应用程序级别。我不太清楚RESTEasy关于这方面的规定。最坏的情况是,只发送查询中的数据parameters@peeskillet我在前端添加了web服务器的stacktrace和响应,这可能是一个错误。浏览器开发人员工具显示了关于请求的哪些详细信息?你查过了吗?
var r = $Resource(/rest/resources/1, {},
   remove:{
      method:"DELETE",
      isArray:false,
      headers:{'Content-Type':'application/json; charset=UTF-8'} 
   }
);