Error "Invalid character found in the request target The valid characters are defined in RFC 7230 and RFC 3986" and "HTTP Status 400" when Searching or Changing the status of a request, or approving a request in Service Catalog.
CA Service Catalog 17.2, 17.3 and 17.4
Missing Catalog post-installation step
Implement the Catalog post-installation steps related to the server.xml
Please be sure to follow the instructions carefully. The original text for server.xml reads as:
<!-- Define a HTTP/1.1 Connector on port 8080 -->
<Connector port="8080" enableLookups="false" redirectPort="8443" maxThreads="400" minSpareThreads="25" connectionTimeout="15000"
disableUploadTimeout="true" compression="on" compressionMinSize="2048"
compressableMimeType="text/html,text/plain,text/xml,text/css,text/javascript,image/png,image/gif,image/jpeg,application/json"
useBodyEncodingForURI="false" URIEncoding="UTF-8" server="Service Catalog" maxHttpHeaderSize="20480"/>
Placing the "relaxedPathChars" entry at the end would result in this sequence:
<Connector port="8080" enableLookups="false" maxThreads="400" minSpareThreads="25" connectionTimeout="15000"
disableUploadTimeout="true" compression="on" compressionMinSize="2048" redirectPort="443"
compressableMimeType="text/html,text/plain,text/xml,text/css,text/javascript,image/png,image/gif,image/jpeg,application/json"
useBodyEncodingForURI="false" URIEncoding="UTF-8" server="Service Catalog" maxHttpHeaderSize="20480"/>
relaxedPathChars="[]|{}^\`"<>" relaxedQueryChars="[]|{}^\`"<>"
However, the placement of the "/>" is no longer correct and will not include the "relaxedPathChars" sequence as part of the tag (highlighted above to demonstrate incorrect placement).
The correct text should read as:
<Connector port="8080" enableLookups="false" maxThreads="400" minSpareThreads="25" connectionTimeout="15000"
disableUploadTimeout="true" compression="on" compressionMinSize="2048" redirectPort="443"
compressableMimeType="text/html,text/plain,text/xml,text/css,text/javascript,image/png,image/gif,image/jpeg,application/json"
useBodyEncodingForURI="false" URIEncoding="UTF-8" server="Service Catalog" maxHttpHeaderSize="20480"
relaxedPathChars="[]|{}^\`"<>" relaxedQueryChars="[]|{}^\`"<>"/>
Similarly:
<Connector port="443" enableLookups="false" tomcatAuthentication="false" maxHttpHeaderSize="20480"
maxThreads="800" minSpareThreads="25" maxSpareThreads="100" debug="0" connectionTimeout="1000000"
disableUploadTimeout="true" compression="on" compressionMinSize="2048"
compressableMimeType="text/html,text/plain,text/xml,text/css,text/javascript,image/png,image/gif,image/jpeg,application/json"
scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" SSLEnabled="true"
keystoreFile="F:\Program Files\CA\Service Catalog\Certs\sc.keystore" keyAlias="sc" keystorePass="sc2018" URIEncoding="UTF-8"
relaxedPathChars="[]|{}^\`"<>" relaxedQueryChars="[]|{}^\`"<>"/>