0
私はSpring4 MVCを使用しており、他の入力フィールドと共にファイルをアップロードしようとしています。Spring4 MVCマルチパート
私は以下enctype="multipart/form-data"
としてそれを宣言したばねXMLジャクソンコンバータ私の形態において
<beans:bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<beans:property name="maxUploadSize" value="250000"/>
<beans:property name="defaultEncoding" value="utf8" />
</beans:bean>
<beans:bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter">
<beans:property name="messageConverters" >
<beans:list>
<beans:ref bean="jacksonMessageConverter" />
</beans:list>
</beans:property>
</beans:bean>
でマルチパートリゾルバを追加するコントローラで私のAJAX呼び出し
var oemManuals = new FormData();
oemManuals.append("name",$("#name").val());
oemManuals.append("description",$("#description").val());
if($('#url').val()){
oemManuals.append('url', $('#url')[0].files[0]);
}
$.ajax({
type: "POST",
url: "${pageContext.request.contextPath }/uploadManuals",
data: oemManuals,
processData: false,
contentType: false,
cache: false,
dataType: "json",
success: function(data){
あるIは@RequestParam
を通して試みリクエストしても、required paramerter name is null
が届きます。しかし、私はパラメータが存在することがわかります
@RequestMapping(value="/uploadManuals", method = RequestMethod.POST)
public @ResponseBody List<OEMManuals> uploadManuals(HttpServletRequest request,
@RequestParam MultipartFile url,
HttpSession session) throws IOException{
すべての値はnullです。
誰かが何か不足していることをお勧めしますか?
ありがとうございました
以下のようなあなたのAJAX呼び出しのURLをというパラメータがなければなりません($( '#のURL')。valを()){ oemManuals.append( 'url'、$( '#url')[0] .files [0]); } – user1762730
ちょうど私はコンテンツの処分のデータを見ることができます。 – user1762730
あなたのコントローラシグネチャの内容にないコンテンツには、実際のURLとともにパラメータ 'url'が必要です。 –