Ich benutze Spring4 MVC und versuche, eine Datei zusammen mit einigen anderen Eingabefeldern hochzuladen.Spring4 MVC multiparts
I mehrt Resolver im Frühjahr xml und jackson Konverter
<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>
In meiner Form habe ich es als enctype="multipart/form-data"
und unten erklärt haben, ist mein Ajax-Aufruf
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){
In meinem Controller ich durch @RequestParam
versucht und fordern Sie aber eine required paramerter name is null
bekommen. Obwohl ich sehe, sind die Parameter vorhanden.
@RequestMapping(value="/uploadManuals", method = RequestMethod.POST)
public @ResponseBody List<OEMManuals> uploadManuals(HttpServletRequest request,
@RequestParam MultipartFile url,
HttpSession session) throws IOException{
Alle Werte sind null.
Kann jemand bitte vorschlagen, wenn ich etwas vermisse.
Dank
wie ein Parameter mit dem Namen URL in Ihren Ajax-Aufruf sein ich die URL anhängen zu Formdata, if ($ ('# url'). Val()) { oemManuals.append ('url', $ ('#url') [0] .files [0]); } – user1762730
nur um hinzuzufügen, ich bin in der Lage, die Daten in Content Disposition zu sehen. – user1762730
nicht in den Inhalt nach Ihrer Controller-Signatur erwartet es den Parameter "URL" zusammen mit der tatsächlichen URL. –