I think we can safely set aside all the file transfer options discussed in
this thread as nonresponsive. The original poster specified there's a
requirement for live/real-time data access -- that CICS TS, z/OS Batch, and
Java programs must all concurrently read and update the VSAM-based data.
Please don't recommend FTP for application integration purposes, at least
as a general principle. Practically everybody who has ventured down that
path is trying to remediate the resulting business problems.
That warning aside, I've seen some good suggestions, and I'll elaborate on
a couple of my favorites. The IBM software product's exact name is IBM
InfoSphere Classic Federation Server for z/OS, and one of the functions it
provides is JDBC access to VSAM data. You may also need VSAM RLS and/or
Transactional VSAM (DFSMStvs) depending on how much true write/update
concurrency you require and your circumstances.
A really effective approach not yet mentioned is to simply run the Java in
CICS Transaction Server for z/OS itself. CICS Transaction Server Version
5.1 and higher support the WebSphere Liberty Profile (WLP) as a standard
feature at no additional charge, so moving the Java code to CICS TS has
become rather easy. That Java code can then access VSAM directly and
concurrently with non-Java programs running in CICS TS. It's also possible
(and common), as another responder alluded to, to run a portion of the
total Java code in question -- let's call that portion the "data access
objects" -- in WLP within CICS TS, then run other Java components elsewhere
if desired, and if there's merit. (You can often run all the Java in CICS
TS itself.)
If you don't have CICS Transaction Server Version 5.1 or higher yet, have a
chat with IBM. One perfectly viable approach would be to run the current
release of CICS Transaction Server initially only for the wonderful latest
WLP functionality, leaving your other CICS regions at whatever release(s)
they are (initially). You don't have to upgrade everything all at once --
or even anything, initially. (CICS TS is designed to interoperate between
releases this way.) A Single Version Charge (SVC) period may apply (12
months), but talk with your friendly IBM representative about such issues
if they exist.
Yes, Java code running within CICS TS/WLP can access any JDBC-compliant
database, including Oracle Database.
I'm not sure why VSAM transparency into Datacom would be a common solution
unless you happen to have Datacom, so I'm not sure where that idea came
from. However, if you happen to have DB2 then IBM's CICS VSAM Transparency
would provide the analogous approach. That is, you'd move at least the
relevant data from VSAM into DB2 but use IBM CICS VSAM Transparency -- a
product which doesn't actually require CICS, oddly enough -- to keep the
applications that access VSAM data thinking they're still accessing VSAM as
VSAM. DB2 is obviously then reachable via JDBC.
You've also got the various access options via CICS TS, and CICS TS
obviously knows how to access VSAM. Nowadays I would certainly have the
JSON-related options on my short list, but there are many, many options.
--------------------------------------------------------------------------------------------------------
Timothy Sipples
IT Architect Executive, zEnterprise Industry Solutions, AP/GCG/MEA
E-Mail:
sip...@sg.ibm.com
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to
list...@listserv.ua.edu with the message: INFO IBM-MAIN