[JAVA] Soyez prudent avec la mise à niveau si vous utilisez | etc. dans l'URL Tomcat

De Tomcat 8.0.39, 8.5.7, 7.0.73, il s'agit d'une spécification qui génère une erreur lorsque l'URL contient | etc. Soyez prudent si vous êtes impliqué dans la maintenance des applications héritées.

java.lang.IllegalArgumentException: Invalid character found in the request target. The valid characters are defined in RFC 7230 and RFC 3986
	at org.apache.coyote.http11.InternalInputBuffer.parseRequestLine(InternalInputBuffer.java:189)
	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1000)
	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:637)
	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	at java.lang.Thread.run(Thread.java:745)

Relation: http://stackoverflow.com/questions/41053653/tomcat-8-is-not-able-to-handle-get-request-with-in-query-parameters

Référentiel pour vérification de test https://github.com/takeo-asai/tomcat-invalid-character

Recommended Posts

Soyez prudent avec la mise à niveau si vous utilisez | etc. dans l'URL Tomcat
Soyez prudent si vous trouvez SHIFT-JIS en Java
Si vous utilisez DataSourceTransactionManager de Spring, il peut être validé en cas d'erreur! ??
[Rails] Où faire attention dans la description de la validation
(Déterminez en 1 minute) Comment utiliser vide?, Vide? Et présent?
Si vous souhaitez satisfaire la couverture de test des méthodes privées dans JUnit
À propos de la signification des variables de type, E, T, etc. utilisées dans les génériques utilisés en Java
À propos de l'idée des classes anonymes en Java
Avec Tomcat, vous pouvez utiliser des espaces réservés ($ {...}) dans web.xml.
[Java] Faites attention au type de clé de la carte
Que faire si vous ne pouvez pas obtenir le texte d'un élément dans Selenium
Si vous faites une erreur dans l'emplacement de description de Gem, supprimez Gemfile.lock une fois.
Obtenez l'URL de la destination de la redirection HTTP en Java
Format de la sortie du journal par Tomcat lui-même dans Tomcat 8
Préparer l'environnement d'exécution de Tomcat dans IntelliJ Community
Accédez au fichier war dans le répertoire racine de Tomcat
Définissez l'URL racine lors du démarrage de Tomcat avec intelliJ
Obtenez l'URL de la destination de la redirection HTTP dans Ruby
Même si j'écris le paramètre de STRICT_QUOTE_ESCAPING dans CATALINA_OPTS dans tomcat8.5, il n'est pas reflété.
Que faire si vous obtenez d'autres occurrences d'erreurs d'analyse de l'en-tête http seront consignées au niveau de débogage. Dans Tomcat 8.5.37
Avez-vous déjà pensé à la définition de «mauvaise conception»?
Que faire si la commande rails devient inutilisable
[Swift] Lorsque vous voulez savoir si le nombre de caractères dans String correspond à un certain nombre ...
Si vous souhaitez simuler une méthode dans RSpec, vous devez utiliser la méthode allow pour mock et la méthode singleton.