我正在開發一個POST方法,它必須接收一個excel文件,但我遇到了一些問題。這是我的代碼使用POST上傳excel文件時出現JAX-RS問題
@Path("/rest")
public class RestManager{
[...]
@Path("/uploadFile")
@Consumes(MediaType.MULTIPART_FORM_DATA)
@POST
public Response uploadFile(FormDataMultiPart multipart){
[...]
}
}
當我調用API,在服務器端,我有以下錯誤:
ott 09, 2017 4:58:48 PM org.glassfish.jersey.message.internal.ReaderInterceptorExecutor$TerminalReaderInterceptor aroundReadFrom
GRAVE: MessageBodyReader not found for media type=multipart/form-data, type=class com.sun.jersey.multipart.FormDataMultiPart, genericType=class com.sun.jersey.multipart.FormDataMultiPart.
在我的web.xml,我添加以下代碼:
<init-param>
<param-name>jersey.config.server.provider.classnames</param-name>
<param-value>org.glassfish.jersey.media.multipart.MultiPartFeature</param-value>
</init-param>
我在Tomcat v7.0上運行,並添加了jersey-multipart-1.18和mimepull-1.9.3來管理Multipart數據。
我的客戶端響應獲取415 Unsupported Media Type,但在代碼中,我使用該請求發送請求「Content-Type」:'multipart/form-data',相應地使用@Consumes註釋。
任何人都可以給我提示,瞭解問題出在哪裏?