Ich behebe eine Java-App, bei der XML mithilfe von HTTP POST und Servlet zwischen zwei Systemen gesendet wird. Ich vermute, dass das Problem darin besteht, dass das XML viel zu groß wird. Ist es möglich, dass dies das Problem ist? Gibt es eine Grenze?
Wenn es nicht funktioniert, gibt das request.getParameter("message")
auf der Verbraucherseite null zurück. Beide Apps laufen auf TomCat. Ein XML-Dokument mit einer Größe von 1,73 MB schafft es beispielsweise nicht.
Es gibt keine definierte maximale Größe für HTTP-POST-Anforderungen. Wenn Sie eine solche Beschränkung bemerken, handelt es sich um eine willkürliche Beschränkung Ihres HTTP-Servers / Clients.
Sie erhalten möglicherweise eine bessere Antwort, wenn Sie angeben, wie groß das XML ist.
quelle
Abhängig von der Server- und / oder Anwendungskonfiguration kann es ein Limit geben. Überprüfen Sie zum Beispiel
quelle
Ja, es gibt maximal 2 MB und es kann durch eine solche Konfigurationsänderung erhöht werden. Wenn Ihr POST-Text nicht in Form einer mehrteiligen Datei vorliegt, müssen Sie möglicherweise die max-http-post-Konfiguration für tomcat in die Anwendungs-yml-Konfigurationsdatei einfügen.
Erhöhen Sie die maximale Größe jeder mehrteiligen Datei auf 10 MB und die Gesamtnutzlastgröße auf maximal 100 MB
spring: servlet: multipart:max-file-size: 10MB multipart:max-request-size: 100MB
Festlegen der maximalen Größe von Post-Anfragen, bei denen es sich möglicherweise nur um die Formulardaten im Zeichenfolgenformat handelt, auf ~ 10 MB
server: tomcat: max-http-post-size: 100000000 # max-http-form-post-size: 10MB for new version
Möglicherweise müssen Sie dies für die neueste Sprintboot-Version hinzufügen ->
Server: Tomcat: Max-http-Formular-Post-Größe: 10 MB
quelle