Jersey 未找到多部分/表单数据的消息正文读取器-不支持的媒体类型(415)错误

Jersey 未找到多部分/表单数据的消息正文读取器-不支持的媒体类型(415)错误,jersey,Jersey,下面是我的webservice方法的签名,它接受带有content-type=multipart/form-data的附件 @POST @Path("/saveimg") @Consumes(MediaType.MULTIPART_FORM_DATA) public Response saveAttachment( @FormDataParam("files") InputStream fileInputStream,

下面是我的webservice方法的签名,它接受带有
content-type=multipart/form-data的附件

@POST  @Path("/saveimg")    
    @Consumes(MediaType.MULTIPART_FORM_DATA)
    public Response saveAttachment( @FormDataParam("files") InputStream fileInputStream,
             @FormDataParam("files") FormDataContentDisposition contentDispositionHeader) {
我得到了以下错误:

SEVERE:Java类的消息体读取器 com.sun.jersey.core.header.FormDataContentDisposition和Java类型 类com.sun.jersey.core.header.FormDataContentDisposition和MIME 媒体类型多部分/表单数据; 边界=---WebKitFormBoundaryiNkfu0uRssIuZMPX未找到。 与MIME媒体类型兼容的已注册邮件正文读取器包括: / -> com.sun.jersey.core.impl.provider.entity.FormProvider com.sun.jersey.core.impl.provider.entity.StringProvider com.sun.jersey.core.impl.provider.entity.ByteArrayProvider com.sun.jersey.core.impl.provider.entity.FileProvider com.sun.jersey.core.impl.provider.entity.InputStreamProvider com.sun.jersey.core.impl.provider.entity.DataSourceProvider com.sun.jersey.core.impl.provider.entity.XMLJAXBElementProvider$General com.sun.jersey.core.impl.provider.entity.ReaderProvider


尝试删除FormDataContentDisposition,我删除了它,现在我没有415错误。。。但我必须找到另一种方法来获取所需的信息

我的文件在这里:@FormDataParam(“文件”)InputStream fileStream

我试着这样读文件:

最终读取器=新的InputStreamReader(文件流); String text=CharStreams.toString(读卡器)

但不是我的最终解决方案。。。我正在寻找其他解决方案。。。
希望我能帮上忙。

不管回答得多晚,我还是用Jersey 2框架解决了我的问题。球衣版本1对我不起作用。除此之外,所需的图书馆有:

    jersey-media-multipart-2.25

    mimepull-1.9.7
注意:我使用了jackson提供者-jersey-media-json-jackson-2.5.1

很容易,可以从Chrome POSTMAN测试它

   >> method - PUT, POST
   >> Give Path(URL) of your resource method
   >> Body -- form-data  
   >> key -- should match with @@FormDataParam argument
   >> Choose File -> browse but make sure it's **File** type not Text
   >> Yeah, Hit SEND 

当我将消费者内容类型更改为@Consumes(“application/x-www-form-urlencoded”)时,上述错误日志消失,但服务器415(不支持的媒体类型)仍然存在。发送的请求包含内容类型multipart/form数据,包括boundary和mulitipart/form-data。请查看我在上一篇文章中的答案,这可能会对您有所帮助。出于某种原因,我没有使用Maven。你能告诉我少了什么吗?看来你需要多部分的罐子。您正在使用glassfish库吗?请检查此链接。请格式化问题的代码部分。请检查如何将问题发布到堆栈溢出上一次,以便其他人可以轻松了解您面临的问题FormDataContentDisposition不是问题。