I have a client that will be sending in large XML and JSON data (passed as a pointer) to my RPG program (up to 30 meg long). I need to send the data to the server and then the server will return a response that can be up to 40-50 meg long. These are details on insurance policies that are very detailed with 100's of vehicles and coverages all at one time. Using a pointer I can send the request using the following.
I do have the control option set in the program to use Teraspace: ctl-opt ALLOC(*TERASPACE);
Code: Select all
rc = http_url_post_xml(
%trim(url)
:POLEXTPTR
:POLEXTLEN
:%paddr(StartProc)
:%paddr(EndProc)
:*NULL
:180
:HTTP_USERAGENT
:'text/xml;charset=UTF-8'
: %trim(soapaction));
Code: Select all
P EndProc B
D EndProc PI
D userdata * value
D depth 10I 0 value
D name 1024A varying const
D path 24576A varying const
D value A LEN(16000000)
D attrs * dim(32767)
D const options(*varsize)
/free
If (Name = 'ResponseValue');
DSPLY %LEN(VALUE);
Does anyone have a solution to my problem? Any code examples of how to return more than the 32767 bytes back would be a big help for me.
Thanks in advance,
George