I am attempting to make a file upload RESTful service. But it is spitting out a dependency error.
Here is my code:
@ApiOperation(
value = "Upload File.",
notes = "Uploads and stores user files to the server." )
@ApiResponses(value = {
@ApiResponse(code = 403, message = "User not authorized to upload files."),
@ApiResponse(code = 500, message = "Server error")})
@POST
@Consumes(MediaType.MULTIPART_FORM_DATA)
public Response uploadFile(
@ApiParam( value = "File", required = false)
@FormDataParam("file") InputStream uploadInputStream,
@ApiParam( value = "File Data", required = false)
@FormDataParam("file") FormDataContentDisposition fileDetail
){
return Response.ok("Test new endpoint").build();
}
I do have matching versions or jersey and multipart in my pom in my pom.xml
<dependency>
<groupId>com.sun.jersey.contribs</groupId>
<artifactId>jersey-multipart</artifactId>
<version>${jersey.version}</version>
</dependency>
<!-- jersey -->
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-server</artifactId>
<version>${jersey.version}</version>
</dependency>
and here is the error that is being produces
SEVERE: Missing dependency for method public javax.ws.rs.core.Response com.lotame.ws.api.resources.FileResource.uploadFile(java.io.InputStream,com.sun.jersey.core.header.FormDataContentDisposition) at parameter at index 0
SEVERE: Missing dependency for method public javax.ws.rs.core.Response com.lotame.ws.api.resources.FileResource.uploadFile(java.io.InputStream,com.sun.jersey.core.header.FormDataContentDisposition) at parameter at index 1
SEVERE: Method, public javax.ws.rs.core.Response com.lotame.ws.api.resources.FileResource.uploadFile(java.io.InputStream,com.sun.jersey.core.header.FormDataContentDisposition), annotated with POST of resource, class com.lotame.ws.api.resources.FileResource, is not recognized as valid resource method.
Any advice would be appreciated!