Date sent: Sat, 11 Dec 1999 08:06:21 +0100 From: Lars Appel To: java@interex.org Subject: [JAVA:332] Java VPLUS Foundation Classes? (longish) Fellow Java-niks, yesterday, I mentioned the Java Telnet app(let) for access to the HP 3000 from any Java platform. Today I have an even more $think_pink$ idea... Notice that I have not yet seen VPlus+ from advnetsys.com or ViewJ from synkronix.com (now legacyj.com) in detail, so I am probably reinventing the wheel here. Please let me know, if this is the case. While playing with the free Java IDE from www.netbeans.com (now owned by Sun, as it seems) and creating my first GUI program with more than just one or two buttons or input fields, I wondered about getting GUI access to VPLUS applications on the 3000 side... How about a VplusBean that uses Java Telnet (only the telnet protocol part, not the VT320 terminal emulation) to connect to the 3000 and then issue a logon similar to :hello user.acct ;parm=1 ;info=' run myapp ;xl="vplusxl" ' The VPLUSXL would intercept VPLUS intrinsic calls and redirect the related transactions to plain $STDLIST and $STDIN traffic, which in turn would be picked up and handled by the VplusBean that launched the telnet session, and trigger GUI events and properties. A sample "serialized VPLUS traffic" could look like > $VPLUS.vopenformf=myforms < $VPLUS.comarea.cstatus=0 > $VPLUS.vopenterm=myterm < $VPLUS.comarea.cstatus=0 > $VPLUS.vgetnextform=myform1 < $VPLUS.comarea.cstatus=0 > $VPLUS.vshowform < $VPLUS.comarea.showcontrol? > $VPLUS.comarea.showcontrol=1 < $VPLUS.comarea.cstatus=0 > $VPLUS.vreadfields < $VPLUS.comarea.cstatus=0 > $VPLUS.vgetbuffer < $VPLUS.comarea.cstatus=0 < $VPLUS.BUFFER=aaaaaaaabbxxxxxyyyyzzz (... you get the idea ...) Implementing the VPLUSXL should be fairly simple as it does not invoke explicit networking code; it simply uses PRINT and READX intrinsics for plain old "terminal" I/O. The "serialized VPLUS traffic" should probably somewhat less verbose than in the above example (to conserve bandwith). The above traffic might be a debugging flavour selected by SETJCW VPLUSXLDEBUG,1 (by the way, it seems to be possible to debug the traffic by running the program from a plain old terminal or termulator session). It might even be possible to run the VPLUSXL-to-VplusBean traffic over a serial connection like modem (in case no network access is available, eg in remote troubleshooting or support situations). The traffic between VPLUSXL and VplusBean might also use triple DES or some other form of encryption for sensitive data, if so desired (and implemented). Due to the multiplexing of VPLUS transactions to $STDLIST/$STDIN, the client side JavaBean might even be able to pick up and handle non-VPLUS terminal I/O from "non-pure-VPLUS" applications. Well, enough "marketing hype" for now ;-) Any thoughts on the above ideas? Any volunteers to launch a shared effort in the spirit of Open Source to create a GPL'ed reference implementation? We'd need (a) project name, (b) protocol spec for the "serialized VPLUS" traffic, (c) some VPLUSXL implementation, (d) some VplusBean implementation, and (e) an example GUI client like JavaNMMGR as "proof of concept" and educational "cut and paste" source. Looks like room for Java and non-Java programmers, doesn't it? Food for thought (or better... action) ;-) Lars (lappel@grc.hp.com only speaking for lappel, not for @grc.hp.com here)