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.


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"
send buf130
    "POST /ss2servlet/oracle.forms.servlet.ListenerServlet?JServSessionIdss2ser"
    "vlet=gk5q79uqy1 HTTP/1.1\r\n"
    "Pragma: -12\r\n"

Back to top