Web Connection
4.68 and 6.10 on same box
Gravatar is a globally recognized avatar based on your email address. 4.68 and 6.10 on same box
  Doug
  All
  Nov 9, 2019 @ 02:07pm

I need to support a wconnect 4.68 app. However, I already have wconnect 6.10 (c:\wconnect) on my current dev box.

Will the 4.68 app run under the installed 6.10 ? Or should I install 4.68 under it's own folder (i.e. c:\wconnect468)?

I realize the older auto configs programs probably wont work because IIS on machine is version 10, but I figure I can manually set.

Thanks, Doug

Gravatar is a globally recognized avatar based on your email address. re: 4.68 and 6.10 on same box
  Rick Strahl
  Doug
  Nov 10, 2019 @ 02:38pm

Web Connection works great side by side, but you definitely need separate folders. All versions are folder independent except for the samples which want to install to a /wconnect virtual (which you can change). Newer versions make this even easier because you don't have to use IIS locally at all - you can use IIS Express which doesn't share a 'site' but works of folder you specify. Going forward there will be an dev integrated server provided in the box (.NET Core Based) so other than having a .NET Core Runtime installed you won't need anything else.

Older versions are more finicky about where they live, but newer versions (post 6.x and the newer project system) can live anywhere - all you have to do is point it at the right place for where Web Connection is installed during development, so it can find all the library files. The key here is setting the path in your projects so that the right install files are found.

If you're starting a new project, I would recommend running the latest version as it has many improvements with project management and automatic build and configuration features that make it much easier to get a project online. All of this works in older versions too, but it isn't as automated, so more manual work.

+++ Rick ---

Gravatar is a globally recognized avatar based on your email address. re: 4.68 and 6.10 on same box
  Doug
  Rick Strahl
  Nov 17, 2019 @ 10:06am

I have it (4.68) working in a seperate drive and it's own folder (d:\wconnect468). All is fine, except the HTTP_COOKIE variable is not being passed. So THIS.InitSession(Config.cCookiename,3600,.t.) is creating a new session on each hit.

How do I get the client to pass the http_cookie?

Doug

Gravatar is a globally recognized avatar based on your email address. re: 4.68 and 6.10 on same box
  Rick Strahl
  Doug
  Nov 18, 2019 @ 12:28am

You might want to delete your wwSession.dbf table. This sounds like a ID field size issue. Make sure you're not sharing that wwSession table between really old and new versions as the field sizes have changed. The very old version used fixed length keys and was comparing based on the field size, while the newer versions use varchar non-padded fields.

If that doesn't work, check in the wwSession.prg code in LocateSession() and see how and why it's failing (look at the value) and also at the ID generation routine.

+++ Rick ---

Gravatar is a globally recognized avatar based on your email address. re: 4.68 and 6.10 on same box
  Doug
  Rick Strahl
  Nov 18, 2019 @ 11:08am

I deleted the wwsession.dbf. It rebuilt with a different lenght (14 char). It was C(9) before. However, that didn't help.
I Stepped through and found that the request.cservervars does not have the HTTP_COOKIE in it.

So, when Initsession() calls wwrequest.getcookie(), it returns "". Which is passed to IsValidSession() which calls LocateSession() but all pass an empty value, which of course is not found.

Why is the HTTP_COOKIE not in request.cservervars?

Doug

Gravatar is a globally recognized avatar based on your email address. re: 4.68 and 6.10 on same box
  Rick Strahl
  Doug
  Nov 18, 2019 @ 05:40pm

Check the request. The cookie has to be create when a new session is created. Make sure that InitSession() is called or otherwise the Session object and the cookie will never be sent.

Make sure you're not clearing HTTP headers when session cookies are created. Check HTTP requests when a new login/session attachment occurs and see if there's a set-cookie header sent. It should. I don't remember where that happens in Web Connection 4.68 (InitSession() is a good place to start for stepping).

+++ Rick ---

© 1996-2019