Login  
Search All Forums
Dart Home | PowerTCP Web for ActiveX | Custom Development Reply | PowerTCP Web for ActiveX Topics | Forums   
AuthorForum: PowerTCP Web for ActiveX
Topic: Non-blocking GET not returning any data
Robert Suranyi
robert_suranyi@epicdata.com

From: Rihcmond, BC Canada
Posts: 2
Member Since: 04/15/05
posted April 15, 2005 9:59 PM

I am programing a comunications application using the Progress Software (4GL) environment. When I submit an HTTPS Get call using the blocking mode, I receive data as expected. The only issue is that if the call times out, I get the "ERROR: 9060 Caused when Get, Head, Post, or Put methods are used with a Timeout parameter..." popup message which halts my application. Since the application runs unattended, any message that halts the application is unacceptable.

When switching over to Non-nlocking mode, I wait for the State in the State event to be httpCompleted. The issue is that no data is available in my Content variable (gcReceiveData).

The calling procedure is

...
chCtrlFrame:Http:Url = vcVerrusURL.
chCtrlFrame:Http:Security = 1.
chCtrlFrame:Http:Timeout = 0.

chCtrlFrame:Http:Get (INPUT-OUTPUT gcReceivedData BY-VARIANT-POINTER, hHeader BY-VARIANT-POINTER, "", "") NO-ERROR.

MESSAGE "Get Completed" SKIP
    gcReceivedData
    VIEW-AS ALERT-BOX INFO BUTTONS OK.
...


The state event procedure is
 
IF chCtrlFrame:Http:State = 0 THEN DO:
    MESSAGE "Get Completed" SKIP
      gcReceivedData
      VIEW-AS ALERT-BOX INFO BUTTONS OK.
END.

Why won't the non-blocking method return any data? Is there a way to stop the popup messages without going into non-blocking mode?

Thanks
Robert
K M Drake



From: Utica, NY USA
Posts: 3406
Member Since: 07/14/00
posted April 18, 2005 11:54 AM

Hi,
First let me preface this by saying we know absolutely nothing about Progress.

However, I can say that we do not show a messagebox. You are probably not handling the error, so the environment brings up the messagebox.

As far as the content being empty, make sure you are examining the variable in the state event, after the retrieval. 
The syntax for your language is not familiar to me, but it looks like you are examining gcReceivedData immediately following the Get call?
If so, then it will be empty, because this line of code will execute immediately after the call to Get (prior to the server sending the response).
Be sure to make this a global variable, and then check it in the event.

Hope it helps,
-ken
Robert Suranyi
robert_suranyi@epicdata.com

From: Rihcmond, BC Canada
Posts: 2
Member Since: 04/15/05
posted April 18, 2005 8:18 PM

Ken,

Thanks for the reply! I think that I found the issue with Progress not explicitly handling the error. In VB there is a "ON ERROR GOTO errorHandler" statement but Progress doen't have exactly the same structure. In Progress you can call a COM Objects event with a "NO-ERROR" phrase. This is supposed to trap any error generated by the COM object and return it to the running Progress session. This does not seem to be working when using the WebTools Object. I have turned the issue over to Progress Support to take a look. Hope they will be able to solve the issue.

Thnx
Robert



Reply | PowerTCP Web for ActiveX Topics | Forums   
This site is powered by PowerTCP WebServer Tool PowerTCP WebServer for ActiveX