A while back we saw a case, where one of our customers wanted to expose a service as URL. As you know, the URL to access this service looks like this:
They now wanted to escape the '&' character with it's percent-encoded octet '%26', i.e. replacing '&' with '%26'. This however returned an error, stating "Project with name ... not found".
Now, why is this? The percent-encoded octet represents the '&' and they should be equivalent, shouldn't they?
Well, yes and no. The percent-encoded octet is equivalent to the '&' sign, correct.
However, as you will see in RFC3986 Section 2.2 the '&' is a reserved character in a URL. Escaping it will most likely change the way the application is interpreting the URL. And this is the case here. The '&' is a control character, a so-called sub-delimiter. And in our case here, it changes the way BPM interprets this URL.
So you should not escape the reserved characters in the above mentioned URL.
I hope this helps you overcoming problems in the future. And if it does not, take two of these and call me in the morning.