I am running into an issue where I need pass a null value for a URI parameter when invoking a REST GET call from my BPEL process.
The request needs to look like one of the following:
rest.url.com\restservice?param1=¶m2=two
rest.url.com\restservice?param1=%00¶m2=two
param1 is accepted as null by the target system in one of these ways. Either way works correctly in test calls from SOAPUI, but when trying to accomplish this with the REST adapter I run into issues. My rest adapter is set up to use a wsdl and schema to create a request xml file that I create using xslt. If I pass it a null param1 (i.e. <param1/>) from the XML mapping it does not include the parameter in the URI at all and I get this:
rest.url.com\restservice?¶m2=two
On the other hand if I pass a string value representing NUL (<param1> %00</param1>) it seems to url encode it again for the special character '%' and the target system receives this instead
rest.url.com\restservice?param1=%2500¶m2=two
I have attempted to play around with attributes like disable-output-escape, required, default but have had no success.