I'm working with OpenLiberty version 22.0.0.2 (no Jakarta Restful Web Services enabled). I'm trying to implement a document upload API using the Multipart Feature Provided by Jersey.
I have tried numerous suggestions, but cannot get it to work.
API
@POST
@Path("/upload")
@Consumes(MediaType.MULTIPART_FORM_DATA)
@Produces(MediaType.APPLICATION_JSON)
public Response upload(
@FormDataParam("file") InputStream uploadedInputStream,
@FormDataParam("file") FormDataContentDisposition fileDetail)
Application
@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>
The error I'm getting in OL when uploading a file via Postman:
[INFO] [ERROR] No message body reader has been found for class org.glassfish.jersey.media.multipart.FormDataContentDisposition, ContentType: multipart/form-data;boundary=--------------------------814467839830640328856820
What am I missing in the setup?