Tier3 today - And Flex-it like NASDAQ (*Only better!*)



Hi,

For those who have looked at my Flex-Charting/VMS/3GL/Rdb demonstration and
may be wondering about where to draw the line between Java/Javascript/HTML
and Flex/Flash, and how harmoniously these technologies can work together to
deliver that RIA experience to your end-users, you may wish to have a look
at www.nasdaq.com click on "Quotes, Charts & Research" then choose some
stock (I chose "IONA, TIBX, HP" to see why a company with resources as vast
as HP's apparently doesn't have an SOA person worth listening to at
Bootcamp) and then click on "Interactive Charts".

This definitely looks like "a work in progress" for NASDAQ as they move away
from static, server-generated charts. (And they've finally gotten over that
annoying "Click on this control to activate" message. See avoidpatent.js in
http://manson.vistech.net/t3$examples/ to see similar) But what I'd like to
do is use these two Flex-Charting examples to illustrate and contrast the
true beauty of Adobe's FABridge functionality (or their external interface
direct). If you click on NASDAQ's Javascript-backed checkbox(es) to add
additional stock to the chart (in my case HP) you with see that it goes off
to the server and looks to completely reload the chart via
"chartHolder.innerHTML=showChart(blah,blah)" in a Web1.5(esque) display,
whereas with the Tier3 example, all of the Flex controls such
ArrayCollections are completely accessible via the Javascript in
Employee_Lookup.html, with full Web2.0 credentials. No reloading of any HTML
Objects or chart re-instancing, all ActionScript components, and their
accompanying methods, are laid bare and fully accessible by your Javascript.
For example : -

employeeFeed = flexApp.getEmployeeFeed();
: : :
var employee = buildEmployee(empMsgField, empRec);
employeeFeed.addItem(employee);

The addItem() above is an actionscript method on a mxml ArrayCollection
component being accessed directly from Javascript.

Now, I clearly do not have the resources of a NASDAQ, but I offer my humble
code as an example of what can be achieved *today* for those VMS sites that
are thinking of leaving and migrating to something more GUI and/or Web
friendly. All modesty aside, I think it's safe to say that, given just a
fraction of the resources that VMS Middle Management has squandered on
DECForms, BridgeWorks, SOAP/Toolkit, WSIT and now gSOAP, my efforts would
have resulted in a far greater ROI for the VMS License-payer. But that would
be akin to"merit-based project funding" I suppose, and not nearly as much
fun as doling out to your buddies' projects from the VMS-license-fee
coffers, as if it were your own money? But of course, they were born to
rule, and have twenty years experience at screwing the VMS client-base under
their belt! Woe betide anyone with the impertinence to ask "What the ***
are they there for?"!

Cheers Richard Maher

PS. Apparently my example works with OS-X and FireFox but not Safari. If
anyone knows why them please let me know. (Some Vista IE clients are also
experiencing the problem where the "GO" button turns red but nothing is
returned and something like "FABridge is not defined". Curious!)

Still to come: Broadcasted server to client messages, that can either
trigger - JSObject.call() - a client call back to the server for further
info, or perhaps a modal Java popup with some status/stock-price/opcom
message. (Nothing much to do with Tier3 but still nice to see. (Will be
useful for the Ajax(esque) callback after server read))

"Richard Maher" <maher_rj@xxxxxxxxxxxxxxxxxx> wrote in message
news:g02hgo$4gp$1@xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Hi,

If you'd like to see an example of a browser-based Flex/HTML/Javascript
GUI
client talking to a VMS 3GL server, please click on: -

http://manson.vistech.net/t3$examples/demo_client_flex.html

and have a gander.

Username: TIER3_DEMO
Password: QUEUE

You *must* be running: -

. The *latest* version of Adobe's Flash Player (Adobe and FlexBuilder
generate the code for version checking and auto-download but I left it out
of the example for brevity)
. JVM 1.4-2 or later (Java 6 has been out for over a year; what's wrong
with
ya :-)
. If you are behind a firewall that disables outgoing connections then you
must open up to destination port 5255.
. You must have Javascript and Applets enabled for your browser
. Apart from that I've tested it with IE6/7 and Firefox and others have it
working on Safari and Opera

Now, sadly, I was unable to obtain any sort of Rdb Hobbyists license for
the
Deathrow Cluster so I've had to provide a fudge in that the data is
hard-coded in DEMO_UARS.COB :-( But if you want to see what the Rdb code
on
our machines looks like then peruse: -

http://manson.vistech.net/t3$examples/

For all of the source code: -

Server: -

demo_flex.cob (Cobol server code)
build_flex_demo.com (Creates the UAR shareable)
demo_flex_sql.sqlmod (SQL you guessed it)

Client: -

demo_client_flex.html }
employee_lookup.html } All the Application-specific html
avoidpatent.js }

bridgetest.mxml } The Flex driving logic (I can't believe it's that
small!)

Those who are familiar with demo_client_web.html are already familiar with
the example Java classes and CornuCopiae.html. NB: *NO* new Java was
created
for the new application! Code reuse and modularity set to maximum!

Cheers Richard Maher

ps. If you'd like to see this on HP's TestDrive Cluster *with* Rdb then
tell
me (or better still tell your HP rep!) Maybe it's just me, but surely
you'd
be forgiven for wondering why Oracle/Rdb or HP/VMS would not seize on this
opportunity to promote and support their wares?

pps. If you haven't worked it out yet :-) hover over the pie charts and
click for data drill-down.




.