Support Article
DWA: pzSUS Param not properly URLEncoded (HTTP 400 Errors)
SA-32268
Summary
External assignments' links trigger an HTTP 303, "See Other", with a URL containing a pzSUS parameter with a value that starts with "{pr}". The value must be URL encoded as "{" and "}" characters require proper URL encoding if used as part of the URL. When upgrading to Tomcat 8.0.39+ URLs without a properly encoded pzSUS parameter will be blocked as containing illegal characters.
Error Messages
HTTP 400 error
Tomcat logfile:
[http-apr-8080-exec-3] org.apache.coyote.http11.AbstractHttp11Processor.process Error parsing HTTP request header
Note: further occurrences of HTTP header parsing errors will be logged at DEBUG level.
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.InternalAprInputBuffer.parseRequestLine(InternalAprInputBuffer.java:239)
Steps to Reproduce
Run an external assignment when using Tomcat 8.0.39+.
Root Cause
The pzSUS parameter was not properly encoded when returned in a HTTP 303 redirect. It occurs after the initial DWA URL contained in correspondence was used.
Resolution
Apply HFix-31198.
Published January 16, 2017 - Updated October 8, 2020
Have a question? Get answers now.
Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.