2012-08-28 7 views
5

Grundsätzlich meine Anforderung ist, dass ich 4 bis 12 kleine Symbole (6kb) und 15-20 mittelgroße Symbole (sagen 200kb) Symbole hochladen müssen.Datei-API-Basis 64 Codierung für mehrere Bilder von HTML-Seite zu Servlet

Ich habe eine HTML-Seite, die mehrere Bild mit Base 64-Codierung auf Servlet mit POST-Anfrage hochlädt. Diese Basis-64-Zeichenfolge wird in Bytes konvertiert, um ein Bild im Server-Side-Code zu erstellen.

Die POST-Anfrage funktioniert gut, um keine Bilder kleiner Größe (7 KB) und 6-7 mittelgroße Symbole (200 KB) hochzuladen. Wenn ich jedoch mehr als 8 mittelgroße Symbole hochlade, kann die HTML-Seite keine Daten von der HTML-Seite zum Servlet übertragen. Selbst in meinem Servlet, wenn ich (sipReq.getParameter ("name")) für andere Attribute mache, werden die Werte wie Null.

Bitte helfen Sie für eine mögliche Lösung oder ich sollte nach einer anderen Alternative suchen.

+4

Haben Sie eine mehrteilige Anfrage als Möglichkeit zum Hochladen der Bilder untersucht, anstatt sie in Zeichenfolgen zu konvertieren? Kennen Sie auch die Postgrößenbeschränkung Ihres Servers? Ich erwarte, dass es mehr als 2 MB für Ihre 8 Bilder ist. – Sean

+3

Als ein FYI, wenn Sie Tomcat verwenden, ist das Post Limit standardmäßig 2mb. – Sean

+0

Etwas wie [das] (http://trentrichardson.com/2009/06/05/meet-jquery-iframer/)? – saml

Antwort

0

Apache Commons 'FileUpload kann die Lösung für Sie sein - Ich hatte kein Problem mit mehreren, Multi-Megabyte simultanen Dokument-Uploads auf Tomcat dank seiner mehrteiligen Unterstützung, wie von @Sean angedeutet.

Wenn Sie bereits Spring MVC verwenden, können Sie so einfach eine single extra bean hinzufügen.