2016-07-19 9 views
1

Ich habe vor kurzem meine Anwendung aktualisiert. Meine Anwendung verwendet die Java-Web-API mit Servlets und JSPs. Ich habe in der neuen Version den Umstieg von Java 7 auf Java 8.Java 7/8 Anfrage Parameter Größenbeschränkung

Mein Server jetzt die Wildfly10 Plattform verwendet, die Java verwendet 8. Zurück es war Jboss 7, die Java verwendet 7.

In der vorherige Version meiner Anwendung, stürzte meine App, als ich + - 300 Attribute auf einer bestimmten Seite, die meine Anfrage URL lang gemacht hat. Aber in meiner neuen Version ist es kein Problem mehr, ohne Änderungen am spezifischen Code vorzunehmen.

Gibt es einen Unterschied in den Größenbeschränkungen von Request-URLs in Java 7 und Java 8?

+2

Bitte geben Sie an, welche Framework- und Server-Software Sie verwenden (Servlet, JSP, Tomcat, ...?) –

+0

zusätzlicher Inhalt zur Verfügung gestellt – Boerejef

Antwort

5

Nicht die Java-Version, sondern der App-Server. App-Server versuchen, Ihre Webanwendungen vor verschiedenen Angriffen zu schützen, einschließlich der so genannten "hash collision DOS attack". Um solche Angriffe abzuwehren, beschränken Web-Server die Anzahl der Parameter, die per URL übergeben werden können. Wildfly hat die Einstellung max-parameters (finden Sie die Beschreibung in the official documentation). Sowohl JBoss 7 als auch Wildfly 10 haben auch Einstellungen, die die maximale Größe einer Post-Anfrage begrenzen (maxPostSize bzw. max-post-size), vielleicht sind Sie in Ihrer vorherigen App-Version darüber gestolpert.

Sie finden Diskussionen dieser Parameter mit einigen zusätzlichen Details here und here.