We recently upgraded a Web server from Oracle REST Data Services 2.10 to the latest version 17.4.1 . This might sound like jumping from the stone age to spaceships, but there have been only roughly 3 years between those two versions.
The good news is, ORDS ran fantastically stable for so long, and would have continued to do so even longer, but we wanted to use the latest and greatest features, hence the decision to upgrade.
Today finally was the day, we upgraded 3 ORDS instances on our server and everything went fine. Everything appeared to work, all sites were displayed successfully.
Everything? At the first glance it seemed to be fine, but then we found some RESTful webservices, defined in APEX, which did not work anymore.
Instead of showing the result, ORDS presented us with an error page, just like that:
Long story short, after some testing and tinkering, we finally found the issue: ORDS developed a love and dependency on trailing slashes in the URI template
Above is the definition which worked just fine under ORDS 2.x, but causes an error on the current version 17.4.1. Why? The URI template misses a trailing slash. As soon as we add that slash in the definition, everything works like before.
I also reported this to the ORDS forum, since it feels like a bug to me.