Search legacy data sources

Use OmniFind to search legacy data sources using WebSphere Information Integrator Classic Federation

Learn how to set up WebSphere® Information Integrator Classic Federation for z/OS® (called II Classic from this point on) and WebSphere Information Integrator OmniFind™ Edition (refered to as OmniFind from this point on) to crawl product information in a VSAM file on z/OS. This technique can be used to crawl other sources that are not natively supported by OmniFind, but which are accessible using the WebSphere Information Integration product set. Sources include, but are not limited to, Oracle, Sybase, Microsoft® SQL Server, IMS, ADABAS, and Datacom.

Share:

Jacques Labrie (jlabrie@us.ibm.com), Senior Software Engineer, IBM

author photoJacques Labrie is a senior software engineer at the IBM Silicon Valley Lab in San Jose, CA. Jacques has been a manager, team lead, and developer on multiple IBM warehousing and metadata products since 1984. Currently, Jacques is responsible for prototype development of integration scenarios with the IBM WebSphere family of products.



Kathryn Zeidenstein, InfoSphere Guardium Evangelist, IBM

Photo of Kathryn ZeidensteinKathy Zeidenstein has been with IBM's Silicon Valley Lab since 1987. She started in the DB2 for OS/390 organization, which is where she got her first exposure to object-relational. After she began working on the SQL standards team, she became involved with the more advanced object-relational features in DB2, because much of the language design for that work was taken to the SQL standards committees.



23 February 2006

Before you start

Do I need this tutorial?

If you are building an enterprise search application where sources that you want your users to search reside in legacy systems, you can use this tutorial to show you how to configure your OmniFind search systems so that you can crawl legacy data sources.

This tutorial shows you how to set up WebSphere Information Integrator Classic Federation for z/OS (called II Classic from this point on) and WebSphere II OmniFind Edition (referred to as OmniFind from this point on) to crawl product information in a VSAM file on z/OS. This technique can be used to crawl other sources that are not natively supported by OmniFind, but are accessible using the WebSphere Information Integration product set. Sources include, but are not limited to, Oracle, Sybase, Microsoft SQL Server, IMS, ADABAS and Datacom.

For this scenario, the high-level system architecture is implementated as:

Figure 1. Architecture
scenario

Where:

  1. II Classic and WebSphere Information Integrator are used to access the VSAM file and provide a relational view to this legacy source that contains product information.
  2. OmniFind is configured to crawl this relational view of the VSAM file.
  3. Users can run a search against the product information and then can use the hits returned in their search application.

What you will be required to do

Here is an overview of what you will do to set up the system:

  1. Create and define a VSAM file to CICS, and verify that CICS can access the file (optional).
  2. Create the recovery data sets used by II Classic.
  3. Define the VSAM file to II Classic by using the II Classic grammar to create a "virtual table," and verify the access to the table through the II Classic server.
  4. Define the VSAM file as an ODBC data source and configure WebSphere Information Integrator Standard Edition to recognize that VSAM file by creating a nickname for it.
  5. Use the OmniFind database crawler wizard to configure a crawler to access the VSAM content through the nickname.

Definitions

  • WebSphere OmniFind and OmniFind refers to the WebSphere Information Integrator OmniFind Edition software.
  • WebSphere II and WII refers to the WebSphere Information Integrator Standard Edition software.
  • DB2® UDB™ refers to the DB2 Universal Database software.
  • WebSphere II Classic or II Classic refers to the WebSphere Information Integrator Classic Federation for z/OS software.
  • ISPF refers to the z/OS interface to applications

Assumptions about your system

This tutorial assumes that you will be configuring the II Classic system to access VSAM data sources using a sample VSAM file that contains product information. If you already have a data source defined to II Classic, you can skip the setup steps for the same product data.

Before you begin, you must have installed and configured:

  • DB2 UDB ESE V8.2 (included with OmniFind)
  • WebSphere Information Integrator V8.2 Standard Edition (included with OmniFind)
  • WebSphere Information Integrator V8.2 Classic Federation for z/OS and WebSphere Information Integrator V8.2 Classic Federation client on Windows®
  • WebSphere Information Integrator V8.3 OmniFind Edition
  • Optionally, CICS. Since you will only be crawling the VSAM file, CICS is not required, but it is recommended for high-performing access to the VSAM file from II Classic.

Infrastructure assumptions:

  1. WebSphere II Standard Edition is installed as a standalone federated server with all wrappers.
  2. WebSphere II OE is installed and configured to support database sources
  3. WebSphere II Classic Federation for z/OS is configured for VSAM access

Data assumptions:

  • A VSAM file that contains product details is available on MVS.

Tasks you will need to complete

Below is a ordered list of task that you will do in order to set up the tutorial system on your local servers.

  1. Configure and create all of the II Classic objects that you will need to access the product information. This includes creating the VSAM file that holds the product information. Once the file has been identified to IICF, you will identify it to WII for access using the ODBC wrapper.
  2. You will configure OmniFind so that you can index the product descriptions that are stored in the VSAM file. Once OmniFind has been configured, you will crawl the VSAM file using the nickname defined earlier.

Configuring WebSphere II Classic for VSAM access

Overview

In this section, you will create a VSAM file, define the VSAM file to your CICS system, register the VSAM file for to II Classic, and modify and submit the necessary jobs needed to run the Classic Federation software. If you already have a legacy data source defined to II Classic, you can skip this step and proceed to the next one, where you will configure WII to access the VSAM file.

Defining a VSAM file to be used by CF

In this sub-section, you need to create a VSAM file called xxxxxxxx.VSAM.PRODUCT that will contain product information. The VSAM file is a KSDS file and is based on the following COBOL copybook:

**********************************************************************
* COBOL DECLARATION FOR VSAM FILE Products
**********************************************************************
	01  PRODREC.
		05  PRODID              PIC x(8).
		05  NAME                PIC X(20).
		05  DESCRIPT            PIC X(50).
		05  OWNER               PIC X(20).

To create the acutal VSAM file, modify the job below and submit it to create the VSAM file on your system

//JLABRIEV JOB (3WCA,376),'SVT VSAM Def',CLASS=A,MSGCLASS=X,
//         MSGLEVEL=(1,1),NOTIFY=JLABRIE,REGION=0M,TIME=1440
//**********************************************************
//*
//* This job creates the VSAM files that contain the
//*        PRODUCT information
//*
//**********************************************************
//VSAMDEF1 EXEC PGM=IDCAMS
//SYSPRINT DD   SYSOUT=*
//SYSIN    DD   *
 DEFINE    CLUSTER  (NAME(JLABRIE.VSAM.PRODUCT)               -
                    CYLINDERS(45 15)                          -
                    RECORDSIZE(98 98)                  -
                    KEYS(8 0)                          -
                    INDEXED)                                  -
           DATA     (NAME(JLABRIE.VSAM.PROD.DATA)             -
                    CISZ(8192))                               -
           INDEX    (NAME(JLABRIE.VSAM.PROD.INDEX))
//*

Notes:

  • Make sure the RECORDSIZE() matches the total values of the fields in the COBOL copybook.
  • Make sure to identify the key, KEYS() length and offset for PRODID field.
  • Update the JOB card information and submit the job.

In SDSF, once the job shows a successful completion, you have successfully created the VSAM file that will be used to store the product information. You will need to populate this VSAM file with product information. Sample data that you can load is provided in the zip file included with this tutorial.

Define the VSAM file to CICS

In this sub-section, you need to identify to your CICS system the VSAM file called xxxxxxxx.VSAM.PRODUCT that you just created in the previous section. CICS provides high-performance read access to the VSAM file for II Classic.

  1. To define the file to CICS, start up the application that lets you connect to the CICS system console.

    Figure 2. CICS main panel
    scenario

    Enter CEDA in the command area and click Enter

  2. The command panel of CICS is displayed

    Figure 3. CICS commands panel
    scenario

    Enter DEF in the command area and click Enter

  3. The DEFINE command panel is displayed

    Figure 4. CICS define panel
    scenario

    Enter F in the command area and click Enter

  4. The DEF F (Define File) panel is displayed

    Figure 5. CICS Define File panel
    scenario

    Generate a name (later refered to as CICS_NAME) for your VSAM file that you will identify to II Classic in the FILE field

    Enter the CICS group (CICS_GROUP) that this file will reside in in the Group field

    Enter a description for this VSAM file in the DEScription field

    Specify the actual dataset name of the VSAM file that was created in the previous section in the DSNAme field

    Update the STRings value to be 10

    Click F8 to page down to the DATA FORMAT section

    Figure 6. CICS Define File panel
    scenario

    Update the RECORDFormat value to be F

    Choose the operations you want on the VSAM file. YES is required for READ

    Click F8 to page down to the RECOVERY PARAMETERS section

    Figure 7. CICS Define File panel
    scenario

    Update the RECOVery value to be All

    Update the Fwdrecovlog value to be between 1 and 99. Keep track of this value (will refer to as LOG#), as it will be required when customizing the JCL for the II Classic correlation server.

    Click ENTER to define this new file

    Click the F3 key until you return to the main commands window

  5. Next you need to install the file for CICS to recognize it.

    Figure 8. CICS commands panel
    scenario

    Enter CEDA I in the command area and click Enter

  6. The CEDA Install panel is displayed

    Figure 9. CEDA Install panel
    scenario

    Enter the name (CICS_NAME) of the file that you created in the previous step in the File field

    Click the F8 key to page down to the Group field

    Figure 10. CEDA Install panel
    scenario

    Enter the CICS group (CICS_GROUP) from the previous step in the Group field

    Click Enter

    You should see an INSTALL SUCCESSFUL message on the bottom of the panel

    Click the F3 key until you return to the main CICS commands window

  7. From the main commands window:

    Figure 11. CICS commands panel
    scenario

    Enter CEMT I in the command area and click ENTER to display the list of commands for setting up CICS.

  8. The Inquire panel is displayed

    Figure 12. CEMT Inquire panel
    scenario

    Enter FIL in the command area and click ENTER

  9. A list of all installed files is displayed

    Click the F8 key to page down to the file (CICS_NAME) that you specified in the previous step

    Figure 13. CEMT Inquire File panel
    scenario

    Overtype the first command following Vsa with Ope and click ENTER

    You should see NORMAL in the RESPONSE area. This indicates that the file has been successfully accessed using CICS.

    Figure 14. CEMT Inquire File panel
    scenario

You have now successfully identified the VSAM file to CICS so that it can be accessed using II Classic. You also verified that CICS can read this file.

Create and submit a job to define II Classic Generation Data Group recovery files

In this sub-section, you will update and submit the JCL to generate the "Generation Data Group" datasets that are used by the II Classic correlation server for recovery purposes.

  • Here is a sample JOB that you can use to create the recovery datasets.
    //JLABRIEG JOB (CAC,0000),'JOB CARD',CLASS=A,
    // MSGCLASS=X,NOTIFY=&SYSUID,REGION=0M      ,TYPRUN=SCAN
    //********************************************************************
    //*                                                                  *
    //* LICENSED MATERIALS - PROPERTY OF IBM                             *
    //* 5697-I82                                                         *
    //* 5655-M35                                                         *
    //* 5655-M38                                                         *
    //********************************************************************
    //*                                                                  *
    //*   NAME:  CACGDGA                                                 *
    //*                                                                  *
    //*   JCL TO CREATE GDG DATASETS FOR RECOVERY AND ALLOCATES          *
    //*   THE FIRST GENERATION FOR USE BY THE CORRELATION SERVER         *
    //*                                                                  *
    //*   BE SURE TO CHANGE THE SYMBOLIC VARIABLES AND THE               *
    //*   LOWERCASE hlq TO MATCH THE FULLY QUALIFED DATASET NAMES        *
    //*   BEFORE SUBMITTING THIS JOB.                                    *
    //*                                                                  *
    //********************************************************************
    //CACGDGA PROC CAC='JLABRIE',    INSTALLED HIGH LEVEL QUALIFIER
    //             DISKU=SYSDA,      DASD UNIT
    //             DISKVOL=VOLSER    DASD DISKVOL
    //*
    //GDGDEF   EXEC PGM=IDCAMS
    //SYSPRINT DD   SYSOUT=*
    //*
    //GDGALLOC EXEC PGM=IEFBR14,COND=(0,NE,GDGDEF)
    //CACRCVD  DD DSN=&CAC..IICF.CACRCVD(+1),
    //            UNIT=&DISKU,VOL=SER=&DISKVOL,
    //            SPACE=(TRK,(1)),
    //            DISP=(NEW,CATLG)
    //*
    //CACRCVX  DD DSN=&CAC..IICF.CACRCVX(+1),
    //            UNIT=&DISKU,VOL=SER=&DISKVOL,
    //            SPACE=(TRK,(1)),
    //            DISP=(NEW,CATLG)
    //         PEND
    //ALOCGDG  EXEC CACGDGA
    //GDGDEF.SYSIN    DD *
        DEFINE GENERATIONDATAGROUP -
               (NAME(JLABRIE.IICF.CACRCVD) -
               NOEMPTY -
               SCRATCH -
               LIMIT(5))
        DEFINE GENERATIONDATAGROUP -
               (NAME(JLABRIE.IICF.CACRCVX) -
               NOEMPTY -
               SCRATCH -
               LIMIT(5))
    /*

    Update the JCL with values appropriate for your MVS system, save the file, and submit the JCL.

  • After you have subimtted your job, go into SDSF and verify that the job completed successfully and that the datasets have been created.

You have now successfully defined the recovery datasets that are used by the II Classic correlation server.

Create and submit the II Classic job to define the VSAM file to CF

In this sub-section, you will create the II Classic grammar that is used to define the VSAM files to II Classic. The grammar will represent the VSAM file just registered with CICS.

First you create a grammar file that will contain the metadata commands used to define the VSAM file to II Classic. This must be in a PDS on the MVS system where you have II Classic installed and configured.

A sample GRAMMAR file is shown below that you can modify and save.

DROP TABLE JLABRIE.IIDEMO00;
 /* Default connection parameters for CICS File Information Access. */
 /* The local APPLID and Transaction ID have been suffixed with a 2 */
 /* to avoid conflicts with an active Data Server.                  */
 CONNECT TO CICS USING
    APPLID  "CXAPPC29" "CICSD"
    LOGMODE "MTLU62"
    TRANID  "TXA2";
 USE TABLE JLABRIE.IIDEMO00 DBTYPE VSAM
   DD IIDEMO00
   CICS APPLID  "CXAPPC30" "CICSD"
        LOGMODE "MTLU62" TRANID "TXA1"
 (
  /* COBOL Name PRODID */
  PRODID SOURCE DEFINITION
   DATAMAP OFFSET 0 LENGTH 8 DATATYPE C
   USE AS CHAR(8),
  /* COBOL Name NAME */
  NAME SOURCE DEFINITION
   DATAMAP OFFSET 8 LENGTH 20 DATATYPE C
   USE AS CHAR(20),
  /* COBOL Name DESCRIPT */
  DESCRIPT SOURCE DEFINITION
   DATAMAP OFFSET 28 LENGTH 50 DATATYPE C
   USE AS CHAR(50),
  /* COBOL Name OWNER */
  OWNER SOURCE DEFINITION
   DATAMAP OFFSET 78 LENGTH 20 DATATYPE C
   USE AS CHAR(20)
 );
 USE UNIQUE INDEX JLABRIE.PRODID
  ON JLABRIE.IIDEMO00
    (PRODID);
  1. Update the DROP command to drop any previous definition of this file.
  2. Update the CONNECT command to connect to your CICS system.
  3. Update the USE TABLE command to provide the "relational" name for the VSAM file, the DDNAME that will be specified in the II Classic data server's job, and the connection information for the CICS system where you installed the VSAM file.
  4. Update the source definition for each field in the VSAM file. This should be based on the COBOL copybook that was included at the beginning of this section.
  5. Update the USE UNIQUE INDEX to identify the key field (PRODID) in the VSAM file

Notes:
Update the commands as described in the II Classic documentation. In all cases, Replace "JLABRIE" with a valid qualifier that has been defined to II Classic and "IIDEMO00" with the name of the VSAM file as it is known to CICS (CICS_NAME from previous section).

Save this information into a member of a PDS on your MVS system.

Next you need to create or update JCL used to create the metadata from the grammar you just modified:

//JLABRIEM JOB (CAC,0000),'CACMETAU',CLASS=A,
// MSGCLASS=X,NOTIFY=&SYSUID,REGION=0M      ,TYPRUN=SCAN
//*
//*****************************************************************
//METAUTL PROC CAC='JLABRIE', INSTALLED HIGH LEVEL QUALIFIER
//             DB2='DSN710',  DB2 HIGH LEVEL QUALIFIER
//             RGN=2M,          REGION SIZE
//             GRAMMAR=VSAMDEFN    META DATA GRAMMAR MEMBER NAME
//*
//*****************************************************************
//METAU   EXEC PGM=CACMETA,REGION=&RGN
//STEPLIB  DD  DISP=SHR,DSN=CAC.V820.TEST.LOAD
//         DD  DISP=SHR,DSN=&DB2..SDSNLOAD
//CTRANS   DD  DISP=SHR,DSN=&CAC..IICF.SASC.C650.LINKLIB
//*
//CACCAT   DD  DISP=SHR,DSN=&CAC..IICF.CATALOG
//CACINDX  DD  DISP=SHR,DSN=&CAC..IICF.CATINDX
//IIDEMO00 DD  DISP=SHR,DSN=&CAC..VSAM.PRODUCT
//*
//* VSAM/CICS ACCESS
//CICSUID DD  DISP=SHR,DSN=&CAC..IICFEP.CICSVSAM(CACCICSU)
//*
//SYSTERM  DD  SYSOUT=*
//SYSPRINT DD  SYSOUT=*
//SYSIN    DD  DISP=SHR,DSN=&CAC..IICFEP.CICSVSAM(&GRAMMAR)
//        PEND
//METAUTL EXEC METAUTL
//

The key items to be concerned with are:

  • CACCAT points to the II Classic metadata catalog
  • CACINDX points to the II Classic metadata catalog's index
  • IIDEMO00 points to the VSAM file with the product data (value for DD in the grammar under the USE TABLE command)
  • CICSUID points to a PDS member with a valid CICS user ID and password in it
  • SYSIN points to a PDS member with II Classic grammar that you just created or updated
  • Save and submit the JCL.

After you have subimtted your job, go into SDSF to verify that the job completed successfully.

You have now successfully defined the VSAM file to II Classic so that you can read it using the II Classic software.

Create and submit the the II Classic data server job

In this sub-section, you need to modify the JCL that runs the II Classic data server to access the VSAM file. The data server job identifies the QP (II Classic query processor) that can access and manage the VSAM file.

  • Below is a sample configuration file that is used by the data server that you can modify and save:
    ***********************************************************************
    ***                                                                 ***
    ***   IICF DATA SERVER CONFIGURATION                                ***
    ***                                                                 ***
    ***********************************************************************
    *
    * THE FOLLOWING SERVICE INFO ENTRIES ARE REQUIRED.
    SERVICE INFO ENTRY = CACCNTL CNTL 0 1 1 100 4 5M 1M NO_DATA
    SERVICE INFO ENTRY = CACLOG LOG 1 1 1 100 1 5M 5M DISPLAY
    *
    **************************************************************
    *
    * REMOTE OPERATOR INTERFACE
    SERVICE INFO ENTRY = CACOPER OPER 2 1 1 100 4 5M 5M NO_DATA
    *
    **************************************************************
    *
    * LANGUAGE ENVIRONMENT
    *     UNCOMMENT THE FOLLOWING SERVICE INFO ENTRIES IF YOU WILL BE
    *     USING RECORD EXITS OR STORED PROCEDURES USING IBM'S
    *     LANGUAGE ENVIRONMENT OR COBOL II. THE FIRST ENTRY IS FOR LE
    *     AND THE SECOND FOR COBOL II.
    *     FOR COBOL II, IF YOU WILL HAVE MORE THAN ONE CONCURRENT USER,
    *     DO NOT ACTIVATE THIS INTERFACE.
    *SERVICE INFO ENTRY = CACLE LANGENV 2 1 1 50 4 5M 5M CEEPIPI
    *SERVICE INFO ENTRY = CACLE LANGENV 2 1 1 50 4 5M 5M IGZERRE
    *
    **************************************************************
    *
    * QUERY PROCESSOR SERVICE INFO ENTRY
    *   THE LAST SUBPARAMETER POINTS TO A QP SERVICE CONFIGURATION FILE
    SERVICE INFO ENTRY = CACQP CACSAMP 2 5 100 100 3 5M 5M CACQPCF1
    *
    **************************************************************
    *
    * VSAM INTERFACE
    SERVICE INFO ENTRY = CACVSMS VSAMSRV 2 1 1 50 4 5M 5M CLOSE_ON_IDLE
    *
    **************************************************************
    *
    * TCP/IP CONNECTION HANDLER
    *   REFER TO EXADAS DOCUMENTATION FOR DETAILED
    *   INFORMATION ON LAST SUBPARAMETER
    SERVICE INFO ENTRY = CACINIT TCPIP 2 1 1 1100 4 5M 5M \
    TCP/9.30.136.90/5502
    *
    *************************************************************
    *
    * MISC REQUIRED PARAMETERS
    *
    MESSAGE POOL SIZE = 16777216
    *
    NL = US ENGLISH
    NL CAT = DD:ENGCAT
    *
    * IF YOU ARE NOT ALLOWING UPDATES TO THE CATALOG FILES WHILE
    * ANY DATA SERVERS ARE ACCESSING THE CATALOG FILES, CHANGE THE
    * VALUE TO A ONE.  THE CATALOG FILES WILL ONLY BE OPENED DURING
    * QP INITIALIZATION RATHER THAN DURING EACH QUERY OPEN CURSOR.
    *
    STATIC CATALOGS = 0

    The key fields to update have been highlighted. Change the SERVICE INFO ENTRY fields so that they contain your server name and IP/port information. Remember the name of your query processor (CACSAMP is used in this example and it will be referred to as QP_NAME), since it will be used in a later section when we define the ODBC driver that accesses it.

    Save this file in a PDS member on the system you have II Classic installed.

  • Next, create or update a member that will run the data server using the configuration file you just created and saved. Sample JCL to use is shown below:
    //JLABRIED JOB (3WCA,376),'SVT II Classic Server',CLASS=A,MSGCLASS=X,
    //         MSGLEVEL=(1,1),NOTIFY=&SYSUID,REGION=0M,TIME=1440
    //********************************************************************
    //*  NAME: SRVEPDAT                                                  *
    //*  SAMPLE DATA AND QP SERVER JCL USED FOR VSAM ACCESS AND EP       *
    //********************************************************************
    //CACDS   PROC CAC='QA',          INSTALLED HIGH LEVEL QUALIFIER
    //             MYHLQ='JLABRIE',        MY HIGH LEVEL QUALIFIER
    //             CONFIG=CFGEPDAT,        DATA SERVER CONFIG FILE
    //             SOUT='*',               SYSOUT CLASS
    //             RGN=32M                 REGION SIZE
    //********************************************************************
    //*   THE REGION SIZE MUST BE COORDINATED WITH THE MESSAGE POOL SIZE *
    //*   PARAMETER.  THE RECOMMENDATION IS TO SET THE REGION SIZE AT    *
    //*   LEAST 4MB GREATER THAN THE MESSAGE POOL SIZE.                  *
    //********************************************************************
    //CACPROC EXEC PGM=CACCNTL,TIME=1440,REGION=&RGN
    //* PARM='&PARM1 '
    //STEPLIB  DD DISP=SHR,DSN=CAC.V820.TEST.LOAD
    //VHSCONF  DD DISP=SHR,DSN=&MYHLQ..IICFEP.CICSVSAM(&CONFIG)
    //CTRANS   DD DISP=SHR,DSN=&CAC..V8R2M00.SCACSASC
    //*
    //* UNCOMMENT ONCE THE META CATALOGS HAVE BEEN ALLOCATED/POPULATED
    //CACCAT   DD DISP=SHR,DSN=&MYHLQ..IICF.CATALOG
    //CACINDX  DD DISP=SHR,DSN=&MYHLQ..IICF.CATINDX
    //*
    //SYSTERM  DD SYSOUT=&SOUT
    //SYSPRINT DD SYSOUT=&SOUT
    //*
    //CACLOG   DD DISP=(NEW,PASS,KEEP),DSN=&&LOG,
    //   UNIT=SYSDA,SPACE=(TRK,(30,10))
    //********************************************************************
    //*   PRINT LOG SUMMARY REPORT                                       *
    //*                                                                  *
    //*   CHANGE SYSIN DD TO POINT AT FILTERING MEMBER IF DESIRED        *
    //*   EXAMPLE IN SCACSAMP MEMBER CACLGFLT                            *
    //********************************************************************
    //LOGSUM   EXEC PGM=CACPRTLG,PARM='SUMMARY=Y',COND=EVEN
    //STEPLIB  DD  DISP=SHR,DSN=CAC.V820.TEST.LOAD
    //VHSCONF  DD DISP=SHR,DSN=&MYHLQ..IICFEP.CICSVSAM(&CONFIG)
    //ENGCAT   DD  DISP=SHR,DSN=&CAC..V8R2M00.SCACMENU
    //CTRANS   DD  DISP=SHR,DSN=&CAC..V8R2M00.SCACSASC
    //CACLOG   DD  DISP=(OLD,PASS),DSN=&&LOG
    //SYSTERM  DD  SYSOUT=&SOUT
    //SYSPRINT DD  SYSOUT=&SOUT
    //SYSIN    DD  DUMMY
    //********************************************************************
    //*   PRINT LOG DETAIL REPORT                                        *
    //*                                                                  *
    //*   CHANGE SYSIN DD TO POINT AT FILTERING MEMBER IF DESIRED        *
    //*   EXAMPLE IN SCACSAMP MEMBER CACLGFLT                            *
    //********************************************************************
    //LOGPRINT EXEC PGM=CACPRTLG,PARM='SUMMARY=N',COND=EVEN
    //STEPLIB  DD  DISP=SHR,DSN=CAC.V820.TEST.LOAD
    //VHSCONF  DD DISP=SHR,DSN=&MYHLQ..IICFEP.CICSVSAM(&CONFIG)
    //ENGCAT   DD  DISP=SHR,DSN=&CAC..V8R2M00.SCACMENU
    //CTRANS   DD  DISP=SHR,DSN=&CAC..V8R2M00.SCACSASC
    //CACLOG   DD  DISP=(OLD,DELETE),DSN=&&LOG
    //SYSTERM  DD  SYSOUT=&SOUT
    //SYSPRINT DD  SYSOUT=&SOUT
    //SYSIN    DD  DUMMY
    //         PEND
    //RUNCAC   EXEC CACDS

    In addition to the basic system information, the key areas that you need to change should be:

    CACCAT points to the II Classic metadata catalog.

    CACINDX points to the II Classic metadata catalog's index.

    VHSCONF points to a PDS member with II Classic configuration you just created or updated.

    Save the member and submit the JCL.

  • After you have subimtted your job, go into SDSF to verify the job is up and running:

    Figure 15. SDSF panel
    scenario

The data server is now running and you should be able to run queries against the VSAM file.

Verifying access to WebSphere II Classic

In this sub-section, you will test that the setup is correct. To do so, use the sample that is shipped with II Classic. You will need to make sure that the cacjdbc21.jar is in your classpath, or add it in using the SET CLASSPATH command. This section assumes that you have loaded data into the VSAM file using whatever means you have available on your system.

  • Connect to the II Classic server using the following command in a DOS window (see II Classic documentation for detailed description of the command line parameters):
    java com.ibm.cac.cacjdbctest.Cacsamp CACSAMP:tcp/9.30.136.90/5502 jlabrie mypass

    This will start the II Classic command line process where:

    • CACSAMP is the II Classic query processor name
    • tcp indicates that TCPIP is being used as the communications protocol
    • 9.30.136.90 is the IP address of the system where the II Classic server is running
    • 5502 is the port that the CACSAMP query processor is listening on
    • jlabrie is the user ID to connect to the z/OS system
    • mypass is the z/OS password for jlabrie
  • Now to verify that you can access the data, issue the following SELECT statement (specifying a prodid that is applicable to your system):
    JDBCDemo> select * from jlabrie.iidemo00 where prodid = '11111';
    Issuing Statement <select * from jlabrie.iidemo00 where prodid = '11111';>
    PRODID      NAME            DESCRIPT                        OWNER
    11111       Test insert     This is a test insert           JLABRIE
    
    Total Number Of Records : 1
    JDBCDemo>

    jlabrie.iidemo00 is the name that was specified in the grammar file that was created for the VSAM file.

You have now successfully verified that the VSAM file has been defined properly to CICS and to II Classic Federation.


Configuring WebSphere II Classic for access by WebSphere II Standard Edition

Overview

In this sub-section, you identify the VSAM file you have defined to II Classic as an ODBC system data source. You then use that system data source to create a WebSphere Information Integrator nickname so that you can access the VSAM file as if it were a local relational table.

Creating an ODBC system data source on Windows

In this sub-section, you identify the II Classic server that will provide access to VSAM data sources.

  1. Start the ODBC Administration (Data Sources) tool in the Administration tools folder

    Figure 16. ODBC Administrator Main
    scenario

    Click Add to add a new data source

  2. The create new data source dialog is displayed

    Figure 17. ODBC Administrator Create DSN
    scenario

    Locate the WebSphere II Classic ODBC driver from the list of ODBC drivers

    Click Finish

  3. The communications protocol dialog is displayed

    Figure 18. IICF Communications Protocols
    scenario

    Select TCP/IP

    Click OK

  4. The driver setup dialog is displayed

    Figure 19. IICF Driver setup
    scenario

    Enter CACSAMP for the Data Source Name (note that this is the value of QP_NAME that you specified earlier on the II Classic data server job). This value will be referred to as ODBC_DSN.

    Enter a description

    Enter II Classic Server hostname or IP address in "Host IP address"

    Enter II Classic Server listening port in "Host port number"

    Check OS Login ID Required

    Click OK to create the ODBC data source

  5. You can now test the ODBC definition using any tool that supports ODBC connects. For example, using Microsoft Excel®:

    Figure 20. Microsoft Office main
    scenario

    Select Blank Workbook.

    Click OK.

  6. A new spreadsheet is displayed

    Figure 21. Excel - empty
    scenario

    From the menu options, choose Data->New Database query.

  7. The choose data source dialog is displayed

    Figure 22. Excel - Choose data source
    scenario

    Locate the data source you just created for CF.

    Click OK.

  8. The "specify userid/password" dialog is displayed

    Figure 23. Excel - Connection information
    scenario

    Enter a valid II Classic user ID and password.

    Click OK.

  9. The Choose columns wizard is displayed

    Figure 24. Excel - Query wizard
    scenario

    Select all the columns in table IIDEMO00 (or whatever you named your VSAM file to CF).

    Seeing this list of objects from CF demonstrates that you have verified the connectivity.

    If you want, you can continue through the rest of the Excel wizard until the data is loaded into the spread sheet, as shown below.

    Figure 25. Excel - data
    scenario

Accessing the VSAM file from WebSphere II Standard Edition

In this sub-section, you execute the WebSphere II commands that will identify the VSAM file (through ODBC) as a local nickname. This will allow any application that can read DB2 tables to access this VSAM file as if it were a local DB2 table.

Run the following commands to identify the II Classic data server and the VSAM PRODUCT file to WebSphere Information Integrator SE. It is assumed that you are running these commands in the DB2 command line processor where you have WebSphere Information Integrator SE installed. You will also need to create a database that will contain the definition of this VSAM file:

CONNECT TO WBI_WH USER DEMO USING xxxxxxxx;
---------------------------------------------------------------------------------
-- Create VSAM (CF) wrapper, server and nickname
---------------------------------------------------------------------------------
drop wrapper odbc_wrapper;
CREATE WRAPPER ODBC_WRAPPER LIBRARY 'db2rcodbc.dll' OPTIONS( ADD DB2_FENCED 'N');

---------------------------------------------------------------------------------
-- Create the server that is needed for data access
---------------------------------------------------------------------------------
CREATE SERVER RAPTOR
	TYPE ODBC
	VERSION '3.0'
	WRAPPER ODBC_WRAPPER
	OPTIONS(ADD NODE 'CACSAMP')
;

---------------------------------------------------------------------------------
-- Create the user mapping server that is needed for data access
---------------------------------------------------------------------------------
CREATE USER MAPPING FOR "DEMO"
	SERVER "CACSAMP"
	OPTIONS ( ADD REMOTE_AUTHID 'jlabrie', ADD  REMOTE_PASSWORD 'xxxxxxxx') ;

---------------------------------------------------------------------------------
-- Create the nickname to the VSAM file JLABRIE.VSAM.PRODUCT known as IIDEMO00
---------------------------------------------------------------------------------
CREATE NICKNAME DEMO.PRODUCTS_NN FOR RAPTOR.JLABRIE.IIDEMO00;

Note: You will need to update the commands so that they reference valid objects on your system:

  • The ODBC system DSN that you just created (ODBC_DSN) that points to the II Classic server (in ADD NODE option
  • A valid user ID and password for your II Classic data server

To test the nickname, you can run the following SQL statement in the same DB2 command line processor:

CONNECT TO WBI_WH USER DEMO USING xxxxxxxx;

SELECT * FROM DEMO.PRODUCTS_NN;

At this point, you have configured everything you need to have a VSAM file identified to II Classic and WebSphere Information Integrator so that it can be accessed by the OmniFind crawler.


Configuring OmniFind

Overview

In this section, you identify and crawl the VSAM file as if it were a local DB2 table.

Crawl the WII federated database

In this section, you configure a OE crawler to access the VSAM file. Since you have created a nickname for the VSAM file using WebSphere Information Integrator, you can use the DB2 database crawler. In this tutorial, you will use the OmniFind collection wizard to create and configure the crawler. It is assumed that you have cataloged the WebSphere Information Integrator database where you created the nickname on the machine that you have installed OmniFind.

  1. Start the OE Administration and create a new crawler or update and existing one.

    Figure 26. OmniFind - Collections
    scenario
  2. Using the wizard, create or update a new DB2 crawler that points to the federated database that you created the nickname for the VSAM file in earlier. Use the WBI_WH database, in this example.

    Figure 27. OmniFind - Collections wizard
    scenario

    Enter the requested information for the database and click Next.

  3. You will be shown the tables selection page

    Figure 28. OmniFind - Collections wizard
    scenario

    Enter filter criteria to limit the tables coming back to those that match the nickname you created earlier.

    Click Search for tables.

  4. The tables and nicknames that match your filter are displayed

    Figure 29. OmniFind - Collections wizard
    scenario

    Select the nickname you just created.

    Click > to add as a table to crawl.

  5. The page is updated with the nickname

    Figure 30. OmniFind - Collections wizard
    scenario

    Click Apply.

    Click Next.

  6. The crawler summary screen is shown with the nickname identified to be crawled

    Figure 31. OmniFind - Collections wizard
    scenario

    Click Finish to complete the crawler definition.

You have completed the setup steps required to crawl the VSAM file as if it were a local DB2 table. You can now continue to configure OE as you would with any other collection.

Once the crawler is run, your users will now have access to the information that was found in the VSAM file in their search applications. An example is described below:

In this example, we have created a WebSphere portal application that allows the user to execute an OmniFind search on a VSAM file that contains product information. In the screen shots shown, the users can enter the term that they would like to search on, and then the search results are displayed. In the portal application, the OmniFind runtimes are being invoked to execute the search request.

Figure 32. Sample - Enter search information
scenario
Figure 33. Sample - Display search results
scenario

Summary

This tutorial showed you how to configure WebSphere OmniFind to access legacy data sources so that users can have access to the vast amounts of data supported by WebSphere II Classic Federation.

Resources

Learn

Get products and technologies

Discuss

Comments

developerWorks: Sign in

Required fields are indicated with an asterisk (*).


Need an IBM ID?
Forgot your IBM ID?


Forgot your password?
Change your password

By clicking Submit, you agree to the developerWorks terms of use.

 


The first time you sign into developerWorks, a profile is created for you. Information in your profile (your name, country/region, and company name) is displayed to the public and will accompany any content you post, unless you opt to hide your company name. You may update your IBM account at any time.

All information submitted is secure.

Choose your display name



The first time you sign in to developerWorks, a profile is created for you, so you need to choose a display name. Your display name accompanies the content you post on developerWorks.

Please choose a display name between 3-31 characters. Your display name must be unique in the developerWorks community and should not be your email address for privacy reasons.

Required fields are indicated with an asterisk (*).

(Must be between 3 – 31 characters.)

By clicking Submit, you agree to the developerWorks terms of use.

 


All information submitted is secure.

Dig deeper into Information management on developerWorks


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=1
Zone=Information Management, WebSphere
ArticleID=104526
ArticleTitle=Search legacy data sources
publish-date=02232006