Я нашел решение. После сравнения запросов, которые были в основном одинаковыми (в Delphi 2006 было еще несколько разрывов строк и отступов в XML), я обнаружил разницу в HTTP-заголовке (используя Wireshark)
Delphi 2006: Content-Type: text / xml
Delphi 2009: Content-Type: text / xml; кодировка = "UTF-8"
Решение:
RIO.HTTPWebNode.UseUTF8InHeader := False;
Значение по умолчанию для этого свойства было изменено с Delphi 2006 на Delphi 2009
Вывод:
Кажется, это ошибка в Ruby (на Rails). Он работал с обеими версиями Delphi с локальной установкой веб-сервиса на компьютере с Windows. Проблема возникла только на рабочей машине под управлением Linux.