@RequestPart mit gemischter mehrteiliger Anfrage, Spring MVC 3.2

9

Ich entwickle einen RESTful-Service basierend auf Spring 3.2. Ich stehe vor einem Problem mit einem Controller, der eine gemischte mehrteilige HTTP-Anfrage bearbeitet, mit einem zweiten Teil mit XML- oder JSON-formatierten Daten und einem zweiten Teil mit einer Image-Datei.

Ich verwende @ RequestPart-Annotation für den Empfang der Anfrage

%Vor%

User.java wird so sein-

%Vor%

Nach meinem Verständnis würde ich mit der @RequestPart-Annotation erwarten, dass der XML-Multipart-Abschnitt in Abhängigkeit von seinem Content-Type ausgewertet und schließlich in meine User-Klasse unmarshaliert wird (ich benutze Jaxb2, der Marshaller / Unmarhaller ist korrekt) konfiguriert im Anwendungskontext und die Prozedur funktioniert gut für alle anderen Controller-Methoden, wenn ich die XML-Daten als Körper übergeben und die Annotation @RequestBody verwenden.

Aber was tatsächlich passiert, ist, dass, obwohl die Datei korrekt als MultipartFile gefunden und geparst wird, der "user" -Teil nie gesehen wird und die Anfrage immer fehlschlägt und nicht mit der Controller-Methodensignatur übereinstimmt.

Ich habe das Problem mit mehreren Clients reproduziert und bin zuversichtlich, dass das Format der mehrteiligen Anfrage in Ordnung ist.

Bitte helfen Sie mir, dieses Problem zu lösen. Vielleicht wird es eine Workaround geben, um eine gemischte / mehrteilige Anfrage zu erhalten.

Danke und Grüße,

Raghvendra

    
Raghvendra 26.04.2013, 06:45
quelle

2 Antworten

6

Ich bin mir nicht sicher, ob Sie Ihr Problem behoben haben, aber ich hatte auch ein ähnliches Problem, bei dem mein JSON-Objekt nicht von meinem Controller aufgenommen wurde, wenn @RequestPart und MultipartFile zusammengemischt wurden.

Die Methodensignatur für Ihren Aufruf sieht korrekt aus:

%Vor%

Stellen Sie jedoch sicher, dass Ihre Anfrage etwa so aussieht:

%Vor%     
quelle
-2

hast du es versucht

%Vor%

oder

%Vor%

Wenn das nicht funktioniert, können Sie uns mapping.xml

anzeigen lassen     
rahul maindargi 26.04.2013 06:55
quelle

Tags und Links