![]() | |
![]() |
| | Thread Tools | Display Modes |
#1
| |||
| |||
|
#2
| |||
| |||
|
|
I am wondering how many ways there are to write a Pick/DataBASIC service that takes in a parameter from a URL and returns (via http) a result. Let's say that there is JavaScript in a browser that is doing an XMLHttpRequest (or ActiveX), aka AJAX, request to a URL such as www.mydomain.com/myservice.whatever?this=that What all is behind this URL? It might be enlightening (to me at least) to inventory the ways to accomplish this feat. 1. PHP + OpenQM client/server library + OpenQM In a non-transaction processing environment (in fact doing only read-only right now), I have done this with a PHP wrapper that Tom D wrote for OpenQM, which uses the OpenQM client/server interface written in C (IIRC). 2. Tomcat + Java + UOJ library + UniData I have also done this using a tomcat app server (either in addition to or instead of another web server), Java, and UniObjects for Java (UOJ) with UniData. I had to add in home-grown connection pooling at the time, but UOJ now comes with it (for a price). |
#3
| |||
| |||
|
|
dawn wrote: I am wondering how many ways there are to write a Pick/DataBASIC service that takes in a parameter from a URL and returns (via http) a result. Let's say that there is JavaScript in a browser that is doing an XMLHttpRequest (or ActiveX), aka AJAX, request to a URL such as www.mydomain.com/myservice.whatever?this=that What all is behind this URL? It might be enlightening (to me at least) to inventory the ways to accomplish this feat. 1. PHP + OpenQM client/server library + OpenQM In a non-transaction processing environment (in fact doing only read-only right now), I have done this with a PHP wrapper that Tom D wrote for OpenQM, which uses the OpenQM client/server interface written in C (IIRC). 2. Tomcat + Java + UOJ library + UniData I have also done this using a tomcat app server (either in addition to or instead of another web server), Java, and UniObjects for Java (UOJ) with UniData. I had to add in home-grown connection pooling at the time, but UOJ now comes with it (for a price). 3. Tomcat + Java (or PHP or ASP) + JD3 + D3. 4. Tomcat + Java + Java OBjEX + jBASE. 5. CGI + jBASE binary executable. Note that Tomcat is not the only servlet container out there. Far from it - so you can substitute Resin, Weblogic, WebSphere, JRun, Sun One Server or what-have-you for Tomcat. Likewise, in your point 2, you could have UV instead of UDT. Luke |
#4
| |||
| |||
|
|
Luke Webber wrote: 3. Tomcat + Java (or PHP or ASP) + JD3 + D3. 4. Tomcat + Java + Java OBjEX + jBASE. 5. CGI + jBASE binary executable. Note that Tomcat is not the only servlet container out there. Far from it - so you can substitute Resin, Weblogic, WebSphere, JRun, Sun One Server or what-have-you for Tomcat. Likewise, in your point 2, you could have UV instead of UDT. Everything so far (you and Glen) requires either a servlet container or CGI. |
|
Neither of those is readily available for those doing web site development using a typical ISP (which is often similar to what a corporate web setup might look like for developers who don't have a lot of say on that setup). That's why LAMP (linux, apache, MySQL, PHP) is so popular -- it works both for shops with their own servers and those using ISPs, most of whom provide both PHP and MySQL (typically for extra dollars on the latter). Does anyone have a solution that uses neither CGI nor a servlet container? |
#5
| ||||
| ||||
|
|
dawn wrote: Luke Webber wrote: 3. Tomcat + Java (or PHP or ASP) + JD3 + D3. 4. Tomcat + Java + Java OBjEX + jBASE. 5. CGI + jBASE binary executable. Note that Tomcat is not the only servlet container out there. Far from it - so you can substitute Resin, Weblogic, WebSphere, JRun, Sun One Server or what-have-you for Tomcat. Likewise, in your point 2, you could have UV instead of UDT. Everything so far (you and Glen) requires either a servlet container or CGI. Look again, Dawn. JD3 can be used with PHP on the server side. |
|
OTOH, it needs a connection to your database server. You could just open a hole in your firewall to allow connections on the JD3 ports from the specific web server - that should be secure enough. Neither of those is readily available for those doing web site development using a typical ISP (which is often similar to what a corporate web setup might look like for developers who don't have a lot of say on that setup). That's why LAMP (linux, apache, MySQL, PHP) is so popular -- it works both for shops with their own servers and those using ISPs, most of whom provide both PHP and MySQL (typically for extra dollars on the latter). Does anyone have a solution that uses neither CGI nor a servlet container? Frankly, I don't know why you're so stuck on the public server approach. It's dead cheap to run your own server at home. |
|
All you need is a cheap server PC and Linux, plus a static IP address. OK, the speed may not be all that an ISP can offer directly, but with ADSL2+ it ain't half bad. |
|
Even a standard ADSL link can run 512Kbps in both directions, which is OK for most lowish-volume sites. |
#6
| |||
| |||
|
|
Luke Webber wrote: Look again, Dawn. JD3 can be used with PHP on the server side. I knew I should ask a question and not just let that one slide -- I have no clue what JD3 is. Is it specific to D3? |
|
Frankly, I don't know why you're so stuck on the public server approach. It's dead cheap to run your own server at home. Not for most people, it isn't. All you need is a cheap server PC and Linux, plus a static IP address. OK, the speed may not be all that an ISP can offer directly, but with ADSL2+ it ain't half bad. I'm guessing I'm in the majority of people in the world when I say that I don't want to install and maintain a production server environment. Bandwith, disk space, OS upgrades, app installs, unplanned downtime, security, backups, user administration, fail-over, performance tuing, ... |
|
Even a standard ADSL link can run 512Kbps in both directions, which is OK for most lowish-volume sites. I can run a test server environment that way. Cheers! --dawn |
#7
| |||
| |||
|
|
Luke Webber wrote: dawn wrote: I am wondering how many ways there are to write a Pick/DataBASIC service that takes in a parameter from a URL and returns (via http) a result. Let's say that there is JavaScript in a browser that is doing an XMLHttpRequest (or ActiveX), aka AJAX, request to a URL such as www.mydomain.com/myservice.whatever?this=that What all is behind this URL? It might be enlightening (to me at least) to inventory the ways to accomplish this feat. 1. PHP + OpenQM client/server library + OpenQM In a non-transaction processing environment (in fact doing only read-only right now), I have done this with a PHP wrapper that Tom D wrote for OpenQM, which uses the OpenQM client/server interface written in C (IIRC). 2. Tomcat + Java + UOJ library + UniData I have also done this using a tomcat app server (either in addition to or instead of another web server), Java, and UniObjects for Java (UOJ) with UniData. I had to add in home-grown connection pooling at the time, but UOJ now comes with it (for a price). 3. Tomcat + Java (or PHP or ASP) + JD3 + D3. 4. Tomcat + Java + Java OBjEX + jBASE. 5. CGI + jBASE binary executable. Note that Tomcat is not the only servlet container out there. Far from it - so you can substitute Resin, Weblogic, WebSphere, JRun, Sun One Server or what-have-you for Tomcat. Likewise, in your point 2, you could have UV instead of UDT. Luke Everything so far (you and Glen) requires either a servlet container or CGI. Neither of those is readily available for those doing web site development using a typical ISP (which is often similar to what a corporate web setup might look like for developers who don't have a lot of say on that setup). That's why LAMP (linux, apache, MySQL, PHP) is so popular -- it works both for shops with their own servers and those using ISPs, most of whom provide both PHP and MySQL (typically for extra dollars on the latter). Does anyone have a solution that uses neither CGI nor a servlet container? --dawn |
#8
| |||
| |||
|
|
I am wondering how many ways there are to write a Pick/DataBASIC service that takes in a parameter from a URL and returns (via http) a result. Let's say that there is JavaScript in a browser that is doing an XMLHttpRequest (or ActiveX), aka AJAX, request to a URL such as www.mydomain.com/myservice.whatever?this=that What all is behind this URL? It might be enlightening (to me at least) to inventory the ways to accomplish this feat. 1. PHP + OpenQM client/server library + OpenQM In a non-transaction processing environment (in fact doing only read-only right now), I have done this with a PHP wrapper that Tom D wrote for OpenQM, which uses the OpenQM client/server interface written in C (IIRC). 2. Tomcat + Java + UOJ library + UniData I have also done this using a tomcat app server (either in addition to or instead of another web server), Java, and UniObjects for Java (UOJ) with UniData. I had to add in home-grown connection pooling at the time, but UOJ now comes with it (for a price). Please add to this list. Thanks. --dawn |
#9
| |||
| |||
|
|
I've used dotnet web services, which access the database (jBASE) using jRCS... Like others, the web service can exist publically on the internet, but the database can be stored elesewhere behind a firewall that only allows the web server's IP through on the jRCS port. Regards Simon -- ================================ Simon Verona Dealer Management Service Ltd Stewart House Centurion Business Park Julian Way Sheffield S9 1GD Tel: 0870 080 2300 Fax: 0870 735 0011 "dawn" <dawnwolthuis (AT) gmail (DOT) com> wrote in message news:1153848732.918131.205900 (AT) m73g2000cwd (DOT) googlegroups.com... I am wondering how many ways there are to write a Pick/DataBASIC service that takes in a parameter from a URL and returns (via http) a result. Let's say that there is JavaScript in a browser that is doing an XMLHttpRequest (or ActiveX), aka AJAX, request to a URL such as www.mydomain.com/myservice.whatever?this=that What all is behind this URL? It might be enlightening (to me at least) to inventory the ways to accomplish this feat. 1. PHP + OpenQM client/server library + OpenQM In a non-transaction processing environment (in fact doing only read-only right now), I have done this with a PHP wrapper that Tom D wrote for OpenQM, which uses the OpenQM client/server interface written in C (IIRC). 2. Tomcat + Java + UOJ library + UniData I have also done this using a tomcat app server (either in addition to or instead of another web server), Java, and UniObjects for Java (UOJ) with UniData. I had to add in home-grown connection pooling at the time, but UOJ now comes with it (for a price). Please add to this list. Thanks. --dawn |
#10
| |||
| |||
|
|
Hi Dawn - I have a number of live websites out there, they all run on iis, using ASP or ASP.NET and connect to u2 using uniobjects (or uniobjects.net). Works fine even without connection pooling. Down the line connection pooling is what we shall be putting into place, either using the new offering from IBM (+ maybe the U2 Soap Server), or MV.NET. I have also done sites in the java realm, on tomcat/jboss etc with connections to U2 using our bespoke socket interface. I think really the options are quite large, but more so on the choice of web/application server, to actually get into MV data you either need a bespoke interface (sockets etc) or use one of the tools like uniobjects. I would like to see a better way of getting from php on linux into U2. I know some people have done some work on this using UCI and extensions to php in C, but a nice packaged, documented offering would be pretty cool. rgds Symeon. Simon Verona wrote: I've used dotnet web services, which access the database (jBASE) using jRCS... Like others, the web service can exist publically on the internet, but the database can be stored elesewhere behind a firewall that only allows the web server's IP through on the jRCS port. Regards Simon -- ================================ Simon Verona Dealer Management Service Ltd Stewart House Centurion Business Park Julian Way Sheffield S9 1GD Tel: 0870 080 2300 Fax: 0870 735 0011 "dawn" <dawnwolthuis (AT) gmail (DOT) com> wrote in message news:1153848732.918131.205900 (AT) m73g2000cwd (DOT) googlegroups.com... I am wondering how many ways there are to write a Pick/DataBASIC service that takes in a parameter from a URL and returns (via http) a result. Let's say that there is JavaScript in a browser that is doing an XMLHttpRequest (or ActiveX), aka AJAX, request to a URL such as www.mydomain.com/myservice.whatever?this=that What all is behind this URL? It might be enlightening (to me at least) to inventory the ways to accomplish this feat. 1. PHP + OpenQM client/server library + OpenQM In a non-transaction processing environment (in fact doing only read-only right now), I have done this with a PHP wrapper that Tom D wrote for OpenQM, which uses the OpenQM client/server interface written in C (IIRC). 2. Tomcat + Java + UOJ library + UniData I have also done this using a tomcat app server (either in addition to or instead of another web server), Java, and UniObjects for Java (UOJ) with UniData. I had to add in home-grown connection pooling at the time, but UOJ now comes with it (for a price). Please add to this list. Thanks. --dawn |
![]() |
| Thread Tools | |
| Display Modes | |
| |