Re: [twsocket] HttpServ fixed

2007-05-13 Thread Francois PIETTE
 {$IFNDEF NO_KEEPALIVE_CLOSE_CHECK}
if FKeepAlive = FALSE then {Bjornar}
 {$ENDIF}
CloseDelayed;

There are a lot of places where   if FKeepAlive = FALSE then {Bjornar} 
code is. Do have changed all ?
Why not act where FKeepAlive is assigned instead instead of where it is used 
?

--
[EMAIL PROTECTED]
The author for the freeware multi-tier middleware MidWare
The author of the freeware Internet Component Suite (ICS)
http://www.overbyte.be


- Original Message - 
From: Paul [EMAIL PROTECTED]
To: TWsocket twsocket@elists.org
Sent: Sunday, May 13, 2007 4:14 PM
Subject: [twsocket] HttpServ fixed


 Fixed the problem I had with one server compiled with V5h

 Bjornar added this line at several places :
if FKeepAlive = FALSE then {Bjornar} -- added
CloseDelayed;

 This particular server needs to answer other clients directly within the
 OnGetDocument event of another client.
 I added a new compiler directive for my personal use and all works fine 
 now.

 {$IFNDEF NO_KEEPALIVE_CLOSE_CHECK}
if FKeepAlive = FALSE then {Bjornar}
 {$ENDIF}
CloseDelayed;

 Paul

 -- 
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be 

-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] HttpServ fixed

2007-05-13 Thread Paul
Changed them all
 Why not act where FKeepAlive is assigned instead instead of where it is 
 used
Wasn't sure that would work different in other places.
I can't test the service locally and the downtime of those servers have to 
be an abolute minimum

Paul

- Original Message - 
From: Francois PIETTE [EMAIL PROTECTED]
To: ICS support mailing twsocket@elists.org
Sent: Sunday, May 13, 2007 5:38 PM
Subject: Re: [twsocket] HttpServ fixed


 {$IFNDEF NO_KEEPALIVE_CLOSE_CHECK}
if FKeepAlive = FALSE then {Bjornar}
 {$ENDIF}
CloseDelayed;

 There are a lot of places where   if FKeepAlive = FALSE then {Bjornar}
 code is. Do have changed all ?
 Why not act where FKeepAlive is assigned instead instead of where it is 
 used
 ?

 --
 [EMAIL PROTECTED]
 The author for the freeware multi-tier middleware MidWare
 The author of the freeware Internet Component Suite (ICS)
 http://www.overbyte.be


 - Original Message - 
 From: Paul [EMAIL PROTECTED]
 To: TWsocket twsocket@elists.org
 Sent: Sunday, May 13, 2007 4:14 PM
 Subject: [twsocket] HttpServ fixed


 Fixed the problem I had with one server compiled with V5h

 Bjornar added this line at several places :
if FKeepAlive = FALSE then {Bjornar} -- added
CloseDelayed;

 This particular server needs to answer other clients directly within the
 OnGetDocument event of another client.
 I added a new compiler directive for my personal use and all works fine
 now.

 {$IFNDEF NO_KEEPALIVE_CLOSE_CHECK}
if FKeepAlive = FALSE then {Bjornar}
 {$ENDIF}
CloseDelayed;

 Paul

 -- 
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be

 -- 
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be

 

-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] HttpServ fixed

2007-05-13 Thread Francois PIETTE
Looking at all use of FKeepAlive, I think it is better to always set 
FKeepAlive to false where it is assigned. This will add the header lines 
accordingly in the answer. looks more consistent to me.

btw: Shouldn't you act on the client side in your application and set 
keep-alive to 'close' (property THttpCli.Connection set to 'close') ? This 
would have the same effect without making a special case in server code for 
your application. Properly handling keep-alives would probably help when 
using proxy and similar devices.

--
[EMAIL PROTECTED]
The author for the freeware multi-tier middleware MidWare
The author of the freeware Internet Component Suite (ICS)
http://www.overbyte.be


- Original Message - 
From: Paul [EMAIL PROTECTED]
To: ICS support mailing twsocket@elists.org
Sent: Sunday, May 13, 2007 6:36 PM
Subject: Re: [twsocket] HttpServ fixed


 Changed them all
 Why not act where FKeepAlive is assigned instead instead of where it is
 used
 Wasn't sure that would work different in other places.
 I can't test the service locally and the downtime of those servers have to
 be an abolute minimum

 Paul

 - Original Message - 
 From: Francois PIETTE [EMAIL PROTECTED]
 To: ICS support mailing twsocket@elists.org
 Sent: Sunday, May 13, 2007 5:38 PM
 Subject: Re: [twsocket] HttpServ fixed


 {$IFNDEF NO_KEEPALIVE_CLOSE_CHECK}
if FKeepAlive = FALSE then {Bjornar}
 {$ENDIF}
CloseDelayed;

 There are a lot of places where   if FKeepAlive = FALSE then {Bjornar}
 code is. Do have changed all ?
 Why not act where FKeepAlive is assigned instead instead of where it is
 used
 ?

 --
 [EMAIL PROTECTED]
 The author for the freeware multi-tier middleware MidWare
 The author of the freeware Internet Component Suite (ICS)
 http://www.overbyte.be


 - Original Message - 
 From: Paul [EMAIL PROTECTED]
 To: TWsocket twsocket@elists.org
 Sent: Sunday, May 13, 2007 4:14 PM
 Subject: [twsocket] HttpServ fixed


 Fixed the problem I had with one server compiled with V5h

 Bjornar added this line at several places :
if FKeepAlive = FALSE then {Bjornar} -- added
CloseDelayed;

 This particular server needs to answer other clients directly within the
 OnGetDocument event of another client.
 I added a new compiler directive for my personal use and all works fine
 now.

 {$IFNDEF NO_KEEPALIVE_CLOSE_CHECK}
if FKeepAlive = FALSE then {Bjornar}
 {$ENDIF}
CloseDelayed;

 Paul

 -- 
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be

 -- 
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be



 -- 
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be 
-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] HttpServ fixed

2007-05-13 Thread Paul
Can check this next week maybe.
A proxy has it's own connection that can be keep-alive.
There should be no problem though, it's been tested with V3 even thru SSL 
proxy's like the bluecoat proxy which does SSL filtering

Paul



- Original Message - 
From: Francois PIETTE [EMAIL PROTECTED]
To: ICS support mailing twsocket@elists.org
Sent: Sunday, May 13, 2007 6:48 PM
Subject: Re: [twsocket] HttpServ fixed


 Looking at all use of FKeepAlive, I think it is better to always set
 FKeepAlive to false where it is assigned. This will add the header lines
 accordingly in the answer. looks more consistent to me.

 btw: Shouldn't you act on the client side in your application and set
 keep-alive to 'close' (property THttpCli.Connection set to 'close') ? This
 would have the same effect without making a special case in server code 
 for
 your application. Properly handling keep-alives would probably help when
 using proxy and similar devices.

 --
 [EMAIL PROTECTED]
 The author for the freeware multi-tier middleware MidWare
 The author of the freeware Internet Component Suite (ICS)
 http://www.overbyte.be


 - Original Message - 
 From: Paul [EMAIL PROTECTED]
 To: ICS support mailing twsocket@elists.org
 Sent: Sunday, May 13, 2007 6:36 PM
 Subject: Re: [twsocket] HttpServ fixed


 Changed them all
 Why not act where FKeepAlive is assigned instead instead of where it is
 used
 Wasn't sure that would work different in other places.
 I can't test the service locally and the downtime of those servers have 
 to
 be an abolute minimum

 Paul

 - Original Message - 
 From: Francois PIETTE [EMAIL PROTECTED]
 To: ICS support mailing twsocket@elists.org
 Sent: Sunday, May 13, 2007 5:38 PM
 Subject: Re: [twsocket] HttpServ fixed


 {$IFNDEF NO_KEEPALIVE_CLOSE_CHECK}
if FKeepAlive = FALSE then {Bjornar}
 {$ENDIF}
CloseDelayed;

 There are a lot of places where   if FKeepAlive = FALSE then {Bjornar}
 code is. Do have changed all ?
 Why not act where FKeepAlive is assigned instead instead of where it is
 used
 ?

 --
 [EMAIL PROTECTED]
 The author for the freeware multi-tier middleware MidWare
 The author of the freeware Internet Component Suite (ICS)
 http://www.overbyte.be


 - Original Message - 
 From: Paul [EMAIL PROTECTED]
 To: TWsocket twsocket@elists.org
 Sent: Sunday, May 13, 2007 4:14 PM
 Subject: [twsocket] HttpServ fixed


 Fixed the problem I had with one server compiled with V5h

 Bjornar added this line at several places :
if FKeepAlive = FALSE then {Bjornar} -- added
CloseDelayed;

 This particular server needs to answer other clients directly within 
 the
 OnGetDocument event of another client.
 I added a new compiler directive for my personal use and all works fine
 now.

 {$IFNDEF NO_KEEPALIVE_CLOSE_CHECK}
if FKeepAlive = FALSE then {Bjornar}
 {$ENDIF}
CloseDelayed;

 Paul

 -- 
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be

 -- 
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be



 -- 
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be
 -- 
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be

 

-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] HttpServ

2007-05-12 Thread Francois PIETTE
 Nevertheless, connection are lost and the server is not usable anymore.

Can you better define what doesn't work ?
It is a perfectly reproductible problem or just happend sometimes ?

 It's no problem to place the HttpServ.pas V3 file into the same project
 folder so that it uses this HttrpServ.pas by default.
 Would this have an impact when I need to add SSL ?

Keeping old V3 is a dead end.

--
[EMAIL PROTECTED]
The author for the freeware multi-tier middleware MidWare
The author of the freeware Internet Component Suite (ICS)
http://www.overbyte.be


- Original Message - 
From: Paul [EMAIL PROTECTED]
To: TWsocket twsocket@elists.org
Sent: Saturday, May 12, 2007 8:13 PM
Subject: [twsocket] HttpServ


I have some http-servers that work fine with ICS V5h
 One server doesn't. It only works fine if I replace HttpServ.pas with the 
 ICSV3 one.
 I've checked both version of HttpServ.pas with WinMerge.
 Most changes are the authentication that has been added in V5h and 
 wsoNoReceiveLoop is now a standard option, so I removed this from the 
 server code.
 To get as close as possible, I added these defines:
 NO_AUHENTICATION_SUPPORT, NO+DEBUG_LOG and STREAM64 (local only!)
 Nevertheless, connection are lost and the server is not usable anymore.
 Some connections have an asnwer deferring build in of approx 20 seconds.
 It's no problem to place the HttpServ.pas V3 file into the same project 
 folder so that it uses this HttrpServ.pas by default.
 Would this have an impact when I need to add SSL ?


 Paul
 -- 
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be 
-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] HttpServ

2007-05-12 Thread Paul
 Can you better define what doesn't work ?

Very hard to find out : testing it locally is impossible, the servers need 
other services, webservices and worldwide synchronized SQL-servers to work.
Testing it here localy would be impossible.
It's our gateway (I'm sure you know), but it's been extended a lot and 
cannot work standalone anymore.
Every session on the gateway connects 6 Httpclients together on different 
computers and if one fails, the session fails.

 Keeping old V3 is a dead end.
Maybe, but it rocks.
There isn't that much difference between the 2 versions though if you don't 
need the authentication.
The most changes have something to do with the keep-alive connection.
Also keep in mind that all other components and units used are V5h


Paul



 Original Message - 
From: Francois PIETTE [EMAIL PROTECTED]
To: ICS support mailing twsocket@elists.org
Sent: Saturday, May 12, 2007 10:17 PM
Subject: Re: [twsocket] HttpServ


 Nevertheless, connection are lost and the server is not usable anymore.

 Can you better define what doesn't work ?
 It is a perfectly reproductible problem or just happend sometimes ?

 It's no problem to place the HttpServ.pas V3 file into the same project
 folder so that it uses this HttrpServ.pas by default.
 Would this have an impact when I need to add SSL ?

 Keeping old V3 is a dead end.

 --
 [EMAIL PROTECTED]
 The author for the freeware multi-tier middleware MidWare
 The author of the freeware Internet Component Suite (ICS)
 http://www.overbyte.be


 - Original Message - 
 From: Paul [EMAIL PROTECTED]
 To: TWsocket twsocket@elists.org
 Sent: Saturday, May 12, 2007 8:13 PM
 Subject: [twsocket] HttpServ


I have some http-servers that work fine with ICS V5h
 One server doesn't. It only works fine if I replace HttpServ.pas with the
 ICSV3 one.
 I've checked both version of HttpServ.pas with WinMerge.
 Most changes are the authentication that has been added in V5h and
 wsoNoReceiveLoop is now a standard option, so I removed this from the
 server code.
 To get as close as possible, I added these defines:
 NO_AUHENTICATION_SUPPORT, NO+DEBUG_LOG and STREAM64 (local only!)
 Nevertheless, connection are lost and the server is not usable anymore.
 Some connections have an asnwer deferring build in of approx 20 seconds.
 It's no problem to place the HttpServ.pas V3 file into the same project
 folder so that it uses this HttrpServ.pas by default.
 Would this have an impact when I need to add SSL ?


 Paul
 -- 
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be
 -- 
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be

 

-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] HttpServ Invalid class typecast

2006-02-24 Thread Francois Piette
 Is there anything changed between ICS V3 and V5 ?

I'm not aware of such change.
You can easily have a look at the source code.

--
[EMAIL PROTECTED]
http://www.overbyte.be


- Original Message - 
From: Paul [EMAIL PROTECTED]
To: twsocket@elists.org
Sent: Friday, February 24, 2006 11:00 AM
Subject: [twsocket] HttpServ Invalid class typecast


 I get an 'Invalid class typecast' error in HttpServClientConnect event.
 Is there anything changed between ICS V3 and V5 ?
 The same worked on V3
 
 
 Paul
 
 
 procedure TForm1.HttpServClientConnect(Sender, Client: TObject;
  Error: Word);
 var
   ClientCnx: TMyHttpConnection;
 begin
   ClientCnx:= Client as TMyHttpConnection;
 end;
 
   TMyHttpConnection = class(THttpConnection)
   protected
 ClientID   : integer;
 ConnectionStart : int64;
   public
 procedure AnswerString(var   Flags: THttpGetFlag;
const Status   : String;
const ContType : String;
const Header   : String;
const Body : String); override;
 
 constructor Create(AOwner: TComponent); override;
 destructor Destroy; override;
   end;
 
 
 constructor TMyHttpConnection.Create(AOwner: TComponent);
 begin
   inherited create(AOwner);
   ComponentOptions := ComponentOptions + [wsoNoReceiveloop];  
   ClientID:= InterlockedIncrement(NClientID);
 end;
 
 -- 
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be
-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] HttpServ Invalid class typecast

2006-02-24 Thread Paul
 Have you assigned TMyHttpConnection to property ClientClass?


Grrr.. forgot that


Thanks

Paul
-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Httpserv: Configure Web Page to Expire immediately

2005-12-15 Thread Juri Keyter
I looked and could only find it (no-cache)in the CreateVirtualDocument
procedures. There is no no_cache in WebServ1.pas and I assume you
refer to no-cache. I understand it for the dynamic pages but I still
cannot how to do it for all other non-dynamic pages it delivers.

Thanx for you fast response. 

Juri Keyter 

 


-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
On Behalf Of Francois PIETTE
Sent: 14 December 2005 21:10
To: ICS support mailing
Subject: Re: [twsocket] Httpserv: Configure Web Page to Expire
immediately


I would like the make changes to the WebServ demo so that all pages it

returns will include the
 'Pragma: no-cache' + #13#10 +
 'Expires: -1'  + #13#10,
 in the header. I do not want the browsers to cache it. I want this to 
be  the default behavior.

 Can someone please let me know how to do this?

Just have a better look at WebServ1.pas. Search for NO_CACHE and you'll
find 
what you need :-)

--
Contribute to the SSL Effort. Visit http://www.overbyte.be/eng/ssl.html
--
[EMAIL PROTECTED]
http://www.overbyte.be


-- 
To unsubscribe or change your settings for TWSocket mailing list please
goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Httpserv: Configure Web Page to Expire immediately

2005-12-15 Thread Francois Piette
 I looked and could only find it (no-cache)in the CreateVirtualDocument
 procedures. There is no no_cache in WebServ1.pas and I assume you
 refer to no-cache.

Seems you have an outdated ICS. Download again from my website, preferably the 
last ICS-beta which
is the version I really use in my own applications.

Extracted from WebServ1.pas:

const
  WebServVersion = 109;
  CopyRight : String = 'WebServ (c) 1999-2005 F. Piette V1.09 ';
  NO_CACHE   = 'Pragma: no-cache' + #13#10 + 'Expires: -1' + #13#10;


procedure TWebServForm.CreateVirtualDocument_Template(
Sender: TObject;
ClientCnx : TMyHttpConnection;
var Flags : THttpGetFlag);
begin
ClientCnx.AnswerPage(
Flags,
'',
NO_CACHE,
'TemplateDemo.html',
nil,
['TIME',DateTimeToStr(Now),
 'PROGVER', WebServVersion,
 'SOURCE',  TextToHtmlText(HttpServer1.TemplateDir +
   'TemplateDemo.html')]);
end;

--
Contribute to the SSL Effort. Visit
http://www.overbyte.be/eng/ssl.html
--
[EMAIL PROTECTED]
Author of ICS (Internet Component Suite, freeware)
Author of MidWare (Multi-tier framework, freeware)
http://www.overbyte.be


-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Httpserv: Configure Web Page to Expire immediately

2005-12-14 Thread Francois PIETTE
I would like the make changes to the WebServ demo so that all pages it
 returns will include the
 'Pragma: no-cache' + #13#10 +
 'Expires: -1'  + #13#10,
 in the header. I do not want the browsers to cache it. I want this to be
 the default behavior.

 Can someone please let me know how to do this?

Just have a better look at WebServ1.pas. Search for NO_CACHE and you'll find 
what you need :-)

--
Contribute to the SSL Effort. Visit http://www.overbyte.be/eng/ssl.html
--
[EMAIL PROTECTED]
http://www.overbyte.be


-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be