Pragma mode
The client side of the Oracle NCA Vuser can be configured to send an additional header to the server named Pragma.
The header is a counter that behaves as follows:
The initial message of the NCA handshake has a value of 1.
The messages that follow the handshake are counted, beginning with 3. The counter is incremented by 1 for each message sent by the client.
If the message received from the server is of type plain\text
and the body of the message begins with ifError:#/#00
, the client sends a 0 byte message to the server and the Pragma value changes its sign to a minus. This sign changes back after the client succeeds in receiving the information from the server.
Recording of the Pragma header is only supported in the multi-protocol mode (Oracle NCA and Web). You can identify the Pragma mode within the script's default.cfg file. When operating in Pragma mode, the UseServletMode is set to 2.
[HttpConnectMode] UseHttpConnectMode=1 RelativeURL=<NCAJServSessionId> UseServletMode=2
For information on the Pragma related settings, see the Oracle NCA > Client Emulation view in the runtime settings.
To identify the Pragma mode, you can perform a Winsock level recording and check the buffer contents. In the first example, the buffer contains the Pragma values as a counter:
send buf108 "POST /ss2servlet/oracle.forms.servlet.ListenerServlet?JServSessionIdss2ser" "vlet=gk5q79uqy1 HTTP/1.1\r\n" "Pragma: 1\r\n" ... send buf110 "POST /ss2servlet/oracle.forms.servlet.ListenerServlet?JServSessionIdss2ser" "vlet=gk5q79uqy1 HTTP/1.1\r\n" "Pragma: 3\r\n" ...
In the following example, the buffer contains the Pragma values as an error indicator:
recv buf129 281 "HTTP/1.1 200 OK\r\n" "Date: Tue, 21 May 2022 00:03:48 GMT\r\n" "Server: Oracle HTTP Server Powered by Apache/1.3.19 (Unix) mod_fastcgi/2.2" ".10 mod_perl/1.25 mod_oprocmgr/1.0\r\n" "Content-Length: 13\r\n" "Content-Type: text/plain\r\n" "\r\n" "ifError:8/100" send buf130 "POST /ss2servlet/oracle.forms.servlet.ListenerServlet?JServSessionIdss2ser" "vlet=gk5q79uqy1 HTTP/1.1\r\n" "Pragma: -12\r\n" ...