Troubleshooting and support
Troubleshooting techniques and self-help information help you identify and solve problems quickly. Here, you can find potential solutions for issues you would have with the HTTP connector.
Inconsistent behaviour of query parameters
- Checklist > Configure panel > URL (Path After Hostname)
- Checklist > Map Inputs panel > To Activity section > httpheaders > uri
However, the query parameters set in the steps mentioned above can be replaced or overwritten in the Map Inputs panel > To Activity section > httpheaders > queryParameters. The behavior of the query parameters passed to the HTTP Receiver varies with the input.
- If the value of the URL is mapped and the value of the parameters are empty, then the URL is passed as is to the HTTP Receiver.
- If the value of the URL and the value of the parameter in the map are also assigned, then the HTTP Receiver gets the values. The URL with parameter values are appended to the URL.
- If value of the URL is not mapped, the url is build dynamically using the parameter values in the input map.
Example:
Configure panel URI: /xyz/test?query2=c&query3=c&query5=c&query6=c
Map Inputs URI: /xyz/test?query4=u&query3=u
Map Inputs Query Parameter: query2=m and query3=m
End URL: /xyz/test?query4=u&query3=m&query2=m&query5=&query6=
Character encoding errors when using the HTTP connector
HTTP connector uses ISO-8859-1 as the default character encoding in place of UTF-8.
You can use any one of the following method to change this character encoding value:
- Method 1: To resolve the issue, please follow steps below:
- Go to the HTTP Send Response activity
- Add response header "Content-Type"
- In Map Inputs, To Activity body, right click on the body element and click on "Show Optional Parameters"
- Expand the (optional)httpheaders, and assign default value below to the "Content-Type" element:
text/plain;charset=UTF-8
- Method 2: Introduced new JVM level configuration property. You can change this to the
required value. If you set any value in the HTTP activity, that will take highest priority. Next
priority is given to the JVM level property (if available). If nothing is set in either place, then
default value "ISO-8859-1" is used for content encoding.
- Studio
Property name: "ContentEncoding" Default value: "ISO-8859-1"
Once the Studio is launched, run jConsole in bin directory of JDK. In New Connection screen, under Local Process, select the process corresponding to the Studio and click Connect. Under MBeans tab, navigate to HttpModule > HTTP Loopback > Attributes > ContentEncoding. Change the default value to the required value.
- Appliance
Property name: HTTP_CHARACTER_ENCODING Default value: ""
Setting this attribute on the appliance will require system shell access to enable/disable jmxport. In system shell, issue the following command to check if any value is set for the property:
ihconfutil lookup /var/sysconf sysconf.db HTTP_CHARACTER_ENCODING
User will get output like:
ContentEncodingv: []
Now, try to set the value true to this property.
ihconfutil add /var/sysconf sysconf.db HTTP_CHARACTER_ENCODING <new value>
Now verify the value set using:
ihconfutil lookup /var/sysconf sysconf.db HTTP_CHARACTER_ENCODING
This results in
ContentEncodingv: [<new value>]
The hierarchy in appliance is- Jconsole property
- Config property
- Default value
- Studio