WinHttpClient - An alternative HTTP client for windows

VA Smalltalk is a "100% VisualAge compatible" IDE that includes the original VisualAge technology and the popular VA Assist and WidgetKit add-ons.

Moderators: Eric Clayberg, wembley, tc, Diane Engles, solveig

WinHttpClient - An alternative HTTP client for windows

Postby jvdsandt » Wed Jun 17, 2009 8:27 am

Hi All,

At Nationaal Spaarfonds we have been looking for solutions to the stability problems that sometimes occur when using openssl on multi-core Windows machines. Our first idea was to use libCurl instead of openssl. The API of libCurl is more high level and simpler to use. But libCurl is also a library with its roots on Linux/Unix. This means that is uses a calling convention that is currently not supported by VA Smalltalk on windows. libCurl uses callbacks, these callbacks would lead to crashes with an unsupported calling convention. (Thanks to Marten Feldtmann for this information).

On windows there is another alternative, you can use the native HTTP Client that is shipped with windows as a dll. We wrote a wrapper library in Smalltalk for this dll. It is not completely finished yet but our initial tests show that the library works quite well. We have a test scenario to reproduce the openssl problem on our Windows production server. The test runs fine when we replace the standard VA Smalltalk HTTP client with our library.

We plan to release this library as open source on VAStGoodies. A first version is already available at http://vastgoodies.com/maps/WinHttpClient. No full documentation yet but there is some information on my Smalltalk blog: http://blog.doit.st/2009/06/17/introduc ... smalltalk/.

Jan.
jvdsandt
 
Posts: 15
Joined: Sun Nov 23, 2008 8:46 am

Re: WinHttpClient - An alternative HTTP client for windows

Postby marten » Wed Jun 17, 2009 9:09 am

Thank you for delivering this code - perhaps a wish from me:

separate the tests and the runtime into different configuration maps with according prerequisites - its making the usage easier for persons just downloading it and willing to see, what you have done.

And in general - though it is pretty boring - it's always a good way to define the prerequisites of the configuration maps - it makes loading of tool so much easier and faster.

Especially for the "VAStGoodies.com Tools" I really would like to see the correct prerequisites - of course now I know, that I have to load manually the feature "z.ST: Server Smalltalk (SST) - HTTP" before loading the tool...

Thanks again for this code ...

Marten
Marten Feldtmann, Principal Smalltalk User, Private
SkypeMe callto://marten.feldtmann
marten
[|]
 
Posts: 641
Joined: Sat Oct 14, 2006 7:10 am
Location: Hamburg - Germany

Re: WinHttpClient - An alternative HTTP client for windows

Postby jvdsandt » Fri Jul 10, 2009 4:40 am

Hello Marten,

Today I uploaded a new version of WinHttpClient to VAStGoodies.com, version 0.19. The functionality related to cryptography is now separated. I also put the tests in separate config maps and tried to set the prerequisites right.

I hope you like it :-)

Jan.
jvdsandt
 
Posts: 15
Joined: Sun Nov 23, 2008 8:46 am

Re: WinHttpClient - An alternative HTTP client for windows

Postby Thomas Holzer » Mon Nov 02, 2009 4:37 am

Hallo Jan,

Really great Stuff! Thank you very much for this code. A reliable HTTPS client was missing in VAST.

But should it not be independent of SST at all?

When I load "z.ST: Server Smalltalk (SST) - HTTP", I´m getting the Trail Blazer, AbtMQBase, Remote Smalltalk Support, ENVY/XD Packager etc. etc. All the stuff I don´t need…

But what I just need is a HTTPS Client.

Regards Thomas
Thomas Holzer
 
Posts: 16
Joined: Fri Nov 21, 2008 2:14 am

Re: WinHttpClient - An alternative HTTP client for windows

Postby marten » Tue Nov 03, 2009 3:45 am

Thomas Holzer wrote:.
...
But should it not be independent of SST at all?
...


Yes, "z.ST: Server Smalltalk (SST) - HTTP" should not be needed ...
Marten Feldtmann, Principal Smalltalk User, Private
SkypeMe callto://marten.feldtmann
marten
[|]
 
Posts: 641
Joined: Sat Oct 14, 2006 7:10 am
Location: Hamburg - Germany

Re: WinHttpClient - An alternative HTTP client for windows

Postby jvdsandt » Tue Nov 03, 2009 4:56 am

Marten is right. It is not required for the WinHttpClient. We will remove it in the next version.

Nice to hear that you like the library!

Jan.
jvdsandt
 
Posts: 15
Joined: Sun Nov 23, 2008 8:46 am

Re: WinHttpClient - An alternative HTTP client for windows

Postby Thomas Holzer » Tue Nov 03, 2009 7:40 am

Hello Jan and Marten,

as a consequence, the other Cloudfork library for Simple DB, SQS etc. from http://blog.doit.st/ should also not prerequisite SST.

Because it can use the WinHttpClient instead the SST HTTP client. Or even better, it should exclusively use only the WinHttpClient for production environments, due to the limitations of the SST HTTP client. What do you think?

Please continue this excellent work!

Greetings Thomas
Thomas Holzer
 
Posts: 16
Joined: Fri Nov 21, 2008 2:14 am

Re: WinHttpClient - An alternative HTTP client for windows

Postby daswartz » Wed Nov 18, 2009 8:12 pm

Thomas Holzer wrote:Because it can use the WinHttpClient instead the SST HTTP client. Or even better, it should exclusively use only the WinHttpClient for production environments, due to the limitations of the SST HTTP client. What do you think?


While I haven't had a chance yet to look at the Cloudfork libraries, I am interested and may do so soon. However, those of us who don't run production on windows would really appreciate not having our support dropped in favor of exclusive support for WinHttpClient.

Doug Swartz
daswartz
 
Posts: 48
Joined: Sat Oct 21, 2006 8:12 am
Location: Omaha, USA

Re: WinHttpClient - An alternative HTTP client for windows

Postby tc » Thu Nov 19, 2009 6:48 am

those of us who don't run production on windows would really appreciate not having our support dropped in favor of exclusive support for WinHttpClient.

. . . the others are speaking of apps written by users of VA ST and uploaded to vastgoodies.com. That website was created and maintained by users. Instantiations will be supporting all current platforms. Also, vastgoodies is not limited to windows, if you have a Unix only tool, and decide to share it, consider uploading it.

I'll say it again, Instantiations supports and will support all current platforms.

--tc
tc
Moderator
 
Posts: 304
Joined: Tue Oct 17, 2006 7:40 am
Location: Raleigh, NC

Re: WinHttpClient - An alternative HTTP client for windows

Postby jvdsandt » Thu Jan 28, 2010 12:48 pm

Hello,

We released a new version of WinHttpClient that no longer requires SST (version 0.21). Our next step is to update Cloudfork so that it uses WinHttpClient instead of SST when it is loaded on the Windows platform. On other platforms SST will still be used.

Regards,
Jan.
jvdsandt
 
Posts: 15
Joined: Sun Nov 23, 2008 8:46 am


Return to VA Smalltalk 7.0, 7.5 & 8.0

Who is online

Users browsing this forum: Yahoo [Bot] and 1 guest