0
Jersey(2.22.2)& JaxRsを使用してfileuploadのサポートを構築したいと考えています。JerseyとJaxRで動作しないマルチフォームフォームデータ
これは私のアプリケーションです:
@ApplicationPath("rest")
public class DsmJaxRsApplication extends Application {
@Override
public Set<Class<?>> getClasses() {
Set<Class<?>> classes = new HashSet<>();
classes.add(FileUploadResource.class);
classes.add(MultiPartFeature.class);
return classes;
}
}
これは、POSTリクエストインターセプトするために私のリソースの方法である:
@POST
@Consumes(MediaType.MULTIPART_FORM_DATA)
@Produces(MediaType.TEXT_PLAIN)
@Path("upload")
public Response uploadImportFile(@FormDataParam("reason") String reason,
@FormDataParam("fileName") String fileName,
@FormDataParam("file") InputStream fileContent) {
checkCreateBulkChangeAllowed();
return Response.ok().build();
}
を、これは私の要求ペイロードである:
------WebKitFormBoundaryAh9J98cKgsOv6WCr
Content-Disposition: form-data; name="reason"
wwwww
------WebKitFormBoundaryAh9J98cKgsOv6WCr
Content-Disposition: form-data; name="fileName"
DSM_CH_Bulk_new.xlsx
------WebKitFormBoundaryAh9J98cKgsOv6WCr
Content-Disposition: form-data; name="file"; filename="DSM_CH_Bulk_new.xlsx"
Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
------WebKitFormBoundaryAh9J98cKgsOv6WCr--
問題その方法の中では、fileContent
とreason
co理由となるべき「wwww」があり、fileName
は常にnull
です。誰に何が間違っているのか、私はここで何が分からないのか分かりませんか?
' FormDataContentDisposition'とそのオブジェクトもnullです、web.xml設定を私に提供することはできますか、多分私はそれを理解することができます。 – Marius
@マリアス私は私の答えを更新しました。また、私は最終的なFormDataMultiPartエンティティを使用している人々を見てきました。あなたのリソースメソッドは次のようになります:public Response uploadImportFile(final FormDataMultiPart entity){....} –