So I'm trying to figure out what oracle forms app is sending to server (to possibly use that for load testing). Fiddler tells me that sample request's header looks like this:
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
And the body looks like encrypted/compressed. The question is: what happened to the body (compression, decryption) and how do I get readable string? Or at least bytes that I could send programatically?
EDIT All right, if I go to fiddler's HexView there I have nice hexadecimal representation of what has been sent. Still not clear what client does with packet body, though.
EDIT 2 Seems no one likes hacking oracle forms packets. Anyway, to end this here's a conclusion I've come to: if you send a http packet identical to the one before (like imitating search in a form) - server would answer with
ifError:0/FRM-93618: fatal error reading data from runtime process
Contact your system administrator.
And the application itself would then throw
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.
Would be great if anyone could shed some light on why this is so.
The problem can be resolved by setting the HTTP Server directive
KeepAlive
toOff
. This is the recommended setting for Forms.Oracle recommends using
Oracle Enterprise Manager 11g Fusion Middleware Control
[http://localhost:7001/em
where7001
is the default port ] to modify configuration files. To modify this setting, accomplish the following:OHS
node underWeb Tier
.Oracle HTTP Server
->Administration
->Advanced Configuration
.httpd.conf
from the drop down list.KeepAlive
parameter toOff
.HTTP Server
for this change to take effect.