2016-11-20 10 views
0

formDataをAjaxで渡していますが、Java POSTでどのように処理できますか?Java POSTでformdataパラメータを呼び出す方法

formData.append(file.name, file); 
    formData.append('para', 'true'); 
    $.ajax({ 
     url: 'example.com/test', 
     type: 'POST', 
     data: formData, 
     dataType: 'json', 
     processData: false, 
     contentType: false, 
    }) 

やJava、

@POST 
@Consumes(MediaType.MULTIPART_FORM_DATA) 
@Produces("application/json") 
@Path("test") 
public getJSONFromMultipart(@Multipart(value = "para") boolean test, @Multipart(value = "uploadedFile") Attachment att, @Context final UriInfo info) { ... } 

に私がMULTIPART_FORM_DATAのためのコンパイルエラーを取得し、そのマルチパートエラーをしています。それがformDataを呼び出す正しい方法ですか?

答えて

0

MediaTypeにはどのパッケージをお使いですか? MediaTypeは、Java EE jarだけでなく、Spring Web jarにも存在します。

これらは同じタイプではありません。 Java EEクラスでorg.springframework.http.MediaType

public class MediaType{ 
    ... 
    public final static MediaType MULTIPART_FORM_DATA; 
} 

javax.ws.rs.core.MediaType

public class MediaType{ 
    ... 
    public final static String MULTIPART_FORM_DATA= "multipart/form-data"; 
} 

、なぜ両方@Produces@Consumesに定数を使用していない春のクラスで

import javax.ws.rs.core.MediaType; 

@POST 
@Consumes(MediaType.MULTIPART_FORM_DATA) 
@Produces(MediaType.APPLICATION_JSON) 

ハンドラをJava EEの方法で宣言するときは、インポートを選択する際には注意が必要です。

関連する問題