我正在使用 OpenLiberty 版本 22.0.0.2(未启用 Jakarta Restful Web 服务)。 我正在尝试使用 Jersey 提供的多部分功能来实现文档上传 API。
我尝试了很多建议,但无法让它发挥作用。
API
@POST
@Path("/upload")
@Consumes(MediaType.MULTIPART_FORM_DATA)
@Produces(MediaType.APPLICATION_JSON)
public Response upload(
@FormDataParam("file") InputStream uploadedInputStream,
@FormDataParam("file") FormDataContentDisposition fileDetail)
申请
@ApplicationPath("/")
public class RestApplication extends ResourceConfig {
public RestApplication() {
register(MultiPartFeature.class);
packages("com.packages.to.scan");
}
pom.xml
<dependency>
<groupId>org.glassfish.jersey.containers</groupId>
<artifactId>jersey-container-servlet</artifactId>
<version>2.28</version>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.media</groupId>
<artifactId>jersey-media-json-jackson</artifactId>
<version>2.28</version>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.media</groupId>
<artifactId>jersey-media-multipart</artifactId>
<version>2.28</version>
</dependency>
我在OL通过Postman上传文件时遇到的错误:
[INFO] [ERROR] No message body reader has been found for class org.glassfish.jersey.media.multipart.FormDataContentDisposition, ContentType: multipart/form-data;boundary=--------------------------814467839830640328856820
我在设置中缺少什么?
你解决过这个问题吗?如果是这样,解决方案是什么?