Icon View Thread

The following is the text of the current message along with any replies.
Messages 1 to 9 of 9 total
Thread EWB3 IIS ISAPI dlls
Mon, Jan 18 2021 4:58 PMPermanent Link

Eivind

Gents

So I got a hold of EWB3 yesterday and wanted to use the day today to judge how much time I would need to convert all my EWB2 projects. EWB wise I could recompile fairly quick but for my ISAPI dlls it was not the same joy Smile

Has any others converted their ISAPI dlls yet? For me I only use these dlls for all my project so I'm hoping I can first learn the new way of doing stuff in V3. At the moment I'm not even sure how the new V3 way works so I need to study them more.

Obviously in V2 I had bunch of web action with a pathinfo like /customer, /invoice, / country, etc that returned JSON through DataSetAdapter.BuildRows(). I presume this would be more or less the same except BuildRows now is GetRowsJSON(). Am I correct in presuming this?

As for committing data it looks like a bigger job. Before I had a web action called /commit that received the JSON data and called EWBDatabaseAdapter.Commit(PostData). This triggered the OnGetDatasetAdapter where I handled the opening of the datasets, received paremters, etc. I handled all the authentication and session cookies myself and kept the session data in a database table. I'm a bit confused how how to attack this as the only simple example I saw was for Elevate server modules and using datasets that I did not have (dbIsam).

Anyhow, for those of you that has been playing around with the EWB3 beta for a while feel free to throw in some pointers should you have any regarding ISAPI and the best way to convert them.

Cheers

Eivind
Tue, Jan 19 2021 10:18 AMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

Eivind,

<< Obviously in V2 I had bunch of web action with a pathinfo like /customer, /invoice, / country, etc that returned JSON through DataSetAdapter.BuildRows(). I presume this would be more or less the same except BuildRows now is GetRowsJSON(). Am I correct in presuming this? >>

Yes, that is correct.  However, after looking at the implementations of these methods in the modules, I realized that I did not include non-EWB module alternatives for ISAPI, etc.  Right now all of these methods are bound to EWB-specific incoming module requests, and are not just general JSON generators.  I will need to release an update that adds non-EWB versions of these methods.

Tim Young
Elevate Software
www.elevatesoft.com
Tue, Jan 19 2021 11:54 AMPermanent Link

Eivind

<<Tim Young [Elevate Software] wrote:

Yes, that is correct.  However, after looking at the implementations of these methods in the modules, I realized that I did not include non-EWB module alternatives for ISAPI, etc.  Right now all of these methods are bound to EWB-specific incoming module requests, and are not just general JSON generators.  I will need to release an update that adds non-EWB versions of these methods.>>

Thanks for the update Tim. I shall await that update for my ISAPI projects and consider the EWB server for new projects where my clients do not specify the type of web server.
Fri, Jan 22 2021 12:10 PMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

Eivind,

<< Thanks for the update Tim. I shall await that update for my ISAPI projects and consider the EWB server for new projects where my clients do not specify the type of web server.  >>

It won't take long to implement, so it should be available by next week.  You'll have the same methods as now, but there will also be overloaded versions that allow for the use of TStrings parameters, etc. instead of the TEWBServerRequest instance.

I originally intended to add these, but forgot to do so... Frown

Tim Young
Elevate Software
www.elevatesoft.com
Fri, Jun 11 2021 12:05 AMPermanent Link

Eivind

Gents

Anyone of you guys successfully implemented your ISAPI dlls using EWB3 and EWB3 Delphi modules? Ref the previous reply from Tim some implementation was missing to fully support it. Has that been added now? I see another post that someone "hacked" the BaseURL so it was possible to set it.

Thanks for any info!

Eivind
Fri, Jun 11 2021 5:13 AMPermanent Link

Walter Matte

Tactical Business Corporation

Eivind:

I am the "hacker".  I have successfully implemented ISAPI dlls using EWB3.  However, I do not use EWB3 Delphi modules.

I had written my own http server based on RealThinClient http components for prior EWB 1 and 2 - and have now successfully migrated my server to EWB 3.

My primary use of EWB is for data driven / database apps.  Since my backend is a Delphi ISAPI dll I can do anything I need in the backend - interact with other systems / api's - generate PDFs - emailing - I am sure that is your experience too.  

RealThinClient with StreamSec components gives absolute reliable http/https confidence.  And EWB has the best data handling framework I have found,

Walter
Fri, Jun 11 2021 6:45 PMPermanent Link

StewCam

#MeToo may or may not be changing the world, but we should strive to avoid the suggestion that this is a boys club!

Eivind wrote:

Gents

So I got a hold of EWB3 yesterday [...]
Fri, Jun 11 2021 8:04 PMPermanent Link

Eivind

Walter Matte wrote:

My primary use of EWB is for data driven / database apps.  Since my backend is a Delphi ISAPI dll I can do anything I need in the backend - interact with other systems / api's - generate PDFs - emailing - I am sure that is your experience too.  

------------------
Thats also my intention with ISAPI (PDFs, emailing, etc). Not to mention using IIS & ISAPI is a client requirement. However, I'm using the EWBDatabaseAdapter and EWBDatasetAdapter in my EWB2 projects and find it hard to figure out how to migrate to V3. It appears a-lot has been redefined.

So the big question is... Has anyone done V3 projects using ISAPI AND EWBDatabase / Dataset components? Has Tim implemented what he mention in the previous messages?

Thanks again

Eivind
Thu, Aug 5 2021 7:09 AMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

Eivind,

<< So the big question is... Has anyone done V3 projects using ISAPI AND EWBDatabase / Dataset components? Has Tim implemented what he mention in the previous messages? >>

Yes, they were released as part of 3.01 on 4/15/2021.  You can always see this information in the release notes:

https://www.elevatesoft.com/download?action=info&category=ewb&type=ewbmodule&majorversion=3&version=3.01

(under the downloads, under "Elevate Web Builder 3.01 New Features".

You'll notice that there are now string versions of each of the JSON methods:

https://www.elevatesoft.com/manual?action=viewmethod&id=ewb3mod&product=rsdelphiwin32&version=10.4&comp=TEWBDataSetAdapter&method=GetColumnsJSON

https://www.elevatesoft.com/manual?action=viewmethod&id=ewb3mod&product=rsdelphiwin32&version=10.4&comp=TEWBDataSetAdapter&method=GetRowColumn

https://www.elevatesoft.com/manual?action=viewmethod&id=ewb3mod&product=rsdelphiwin32&version=10.4&comp=TEWBDataSetAdapter&method=GetRowsJSON

Tim Young
Elevate Software
www.elevatesoft.com
Image