Java 处理多部分/表单数据输入

Java 处理多部分/表单数据输入,java,rest,jersey,Java,Rest,Jersey,我只是尝试使用FormDataMultiPart,但不幸的是,它似乎没有 救命啊。 现在,我收到以下错误消息: SEVERE: A message body reader for Java class com.sun.jersey.multipart.FormDataMultiPart, and Java type class com.sun.jersey.multipart.FormDataMultiPart, and MIME media type multipart/form-data;

我只是尝试使用FormDataMultiPart,但不幸的是,它似乎没有 救命啊。 现在,我收到以下错误消息:

SEVERE: A message body reader for Java class com.sun.jersey.multipart.FormDataMultiPart, and Java type class com.sun.jersey.multipart.FormDataMultiPart, and MIME media type multipart/form-data; boundary=----------Ef1gL6cH2ae0gL6Ij5cH2Ef1KM7Ij5 was not found.
The registered message body readers compatible with the MIME media type are:
*/* ->
  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
  com.sun.jersey.core.impl.provider.entity.DocumentProvider
  com.sun.jersey.core.impl.provider.entity.SourceProvider$StreamSourceReader
  com.sun.jersey.core.impl.provider.entity.SourceProvider$SAXSourceReader
  com.sun.jersey.core.impl.provider.entity.SourceProvider$DOMSourceReader
  com.sun.jersey.json.impl.provider.entity.JSONJAXBElementProvider$General
  com.sun.jersey.json.impl.provider.entity.JSONArrayProvider$General
  com.sun.jersey.json.impl.provider.entity.JSONObjectProvider$General
  com.sun.jersey.core.impl.provider.entity.XMLRootElementProvider$General
  com.sun.jersey.core.impl.provider.entity.XMLListElementProvider$General
  com.sun.jersey.core.impl.provider.entity.XMLRootObjectProvider$General
  com.sun.jersey.core.impl.provider.entity.EntityHolderReader
  com.sun.jersey.json.impl.provider.entity.JSONRootElementProvider$General
  com.sun.jersey.json.impl.provider.entity.JSONListElementProvider$General
  com.sun.jersey.json.impl.provider.entity.JacksonProviderProxy
是服务器端问题还是客户端问题

我的客户端代码取自

谷歌搜索“SEVERE:A message body reader for Java”在

“…请确保类路径上有mimepull.jar…”

看起来很像你的stacktrace,不是吗?我不得不说服务器端缺少一些东西。

已解决:

include mimepull-1.6.jar

异常情况是抱怨消息格式不正确。@b因此,问题在于上载客户端?您不应该使用com.sun.*API!这并不能解释你的错误,但这是一个非常糟糕的主意。如果有人试图在OpenJDK上运行你的代码怎么办?@fge,谢谢你的提示。然而,这段代码不会在OpenJDKC中运行,如果不查看线路上发生了什么,就无法确定。使用tcpmon或其他工具,手动验证。或者如果客户端在浏览器中,Chrome的开发工具将显示所有内容。我想知道如何在restful客户端中上传文件。我得试一试。在我将mimepull.jar添加到类路径之前,我也遇到了同样的错误。您需要多部分(与jersey服务器的版本相同)(我的版本是),注意依赖项部分,该部分显示了对mimepull的需要,并提供了一个链接(mimepull-1.6.jar)。