Итак, я пытаюсь выяснить, какое приложение форм оракула отправляет на сервер (чтобы, возможно, использовать его для нагрузочного тестирования). Fiddler сообщает мне, что заголовок примера запроса выглядит так:
POST http://server:9001/forms/lservlet;jsessionid=[long string] HTTP/1.1
Pragma: 81
Content-type: application/octet-stream
Cache-Control: no-cache
User-Agent: Mozilla/4.0 (Windows XP 5.1) Java/1.6.0_30
Host: server:9001
Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2
Connection: keep-alive
Content-Length: 39
И тело выглядит как зашифрованное/сжатое. Вопрос: что произошло с телом (сжатие, расшифровка) и как получить читаемую строку? Или хотя бы байты, которые я мог отправить программно?
EDIT Хорошо, если я перейду к HexView скрипача, у меня будет хорошее шестнадцатеричное представление того, что было отправлено. Однако до сих пор не ясно, что клиент делает с телом пакета.
РЕДАКТИРОВАТЬ 2 Похоже, никому не нравится взламывать пакеты форм оракула. В любом случае, чтобы закончить это, вот вывод, к которому я пришел: если вы отправляете http-пакет, идентичный предыдущему (например, имитируя поиск в форме) - сервер ответит с
ifError:0/FRM-93618: fatal error reading data from runtime process
Contact your system administrator.
А само приложение тогда бы выкинуло
FRM-92104: A network error or server failure has occurred. The request was sent to the
wrong application server (not the one which created the session). The Forms client has
attempted to migrate the session %s time(s) without success. You will need to restart your application.
Было бы здорово, если бы кто-нибудь мог пролить свет на то, почему это так.