Novell exteNd 5.2 User guide

Type
User guide
Novell
www.novell.com
exteNd
Composer
5.2
CICS RPC CONNECT USER’S GUIDE
Legal Notices
Copyright © 2004 Novell, Inc. All rights reserved. No part of this publication may be reproduced, photocopied, stored on a retrieval system, or
transmitted without the express written consent of the publisher. This manual, and any portion thereof, may not be copied without the express written
permission of Novell, Inc.
Novell, Inc. makes no representations or warranties with respect to the contents or use of this documentation, and specifically disclaims any express
or implied warranties of merchantability or fitness for any particular purpose. Further, Novell, Inc. reserves the right to revise this publication and to
make changes to its content, at any time, without obligation to notify any person or entity of such revisions or changes.
Further, Novell, Inc. makes no representations or warranties with respect to any software, and specifically disclaims any express or implied warranties
of merchantability or fitness for any particular purpose. Further, Novell, Inc. reserves the right to makes changes to any and all parts of Novell
software, at any time, without any obligation to notify any person or entity of such changes.
This product may require export authorization from the U.S. Department of Commerce prior to exporting from the U.S. or Canada.
Copyright ©1997, 1998, 1999, 2000, 2001, 2002, 2003 SilverStream Software, LLC. All rights reserved.
SilverStream software products are copyrighted and all rights are reserved by SilverStream Software, LLC
Title to the Software and its documentation, and patents, copyrights and all other property rights applicable thereto, shall at all times remain solely and
exclusively with SilverStream and its licensors, and you shall not take any action inconsistent with such title. The Software is protected by copyright
laws and international treaty provisions. You shall not remove any copyright notices or other proprietary notices from the Software or its
documentation, and you must reproduce such notices on all copies or extracts of the Software or its documentation. You do not acquire any rights of
ownership in the Software.
Patent pending.
Novell, Inc.
404 Wyman Street, Suite 500
Waltham, MA 02451
U.S.A.
www.novell.com
exteNd Composer CICS RPC Connect User’s Guide
June 2004
Online Documentation: To access the online documemntation for this and other Novell products, and to get updates, see
www.novell.com/documentation.
Novell Trademarks
ConsoleOne is a registered trademark of Novell, Inc.
eDirectory is a trademark of Novell, Inc.
GroupWise is a registered trademark of Novell, Inc.
exteNd is a trademark of Novell, Inc.
exteNd Composer is a trademark of Novell, Inc.
exteNd Director is a trademark of Novell, Inc.
iChain is a registered trademark of Novell, Inc.
jBroker is a trademark of Novell, Inc.
NetWare is a registered trademark of Novell, Inc.
Novell is a registered trademark of Novell, Inc.
Novell eGuide is a trademark of Novell, Inc.
SilverStream Trademarks
SilverStream is a registered trademark of SilverStream Software, LLC.
Third-Party Trademarks
All third-party trademarks are the property of their respective owners.
Third-Party Software Legal Notices
The Apache Software License, Version 1.1
Copyright (c) 2000 The Apache Software Foundation. All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1.
Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary
form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials
provided with the distribution. 3. The end-user documentation included with the redistribution, if any, must include the following acknowledgment:
"This product includes software developed by the Apache Software Foundation (http://www.apache.org/)." Alternately, this acknowledgment may
appear in the software itself, if and wherever such third-party acknowledgments normally appear. 4. The names "Apache" and "Apache Software
Foundation" must not be used to endorse or promote products derived from this software without prior written permission. For written permission,
please contact apache@apache.org. 5. Products derived from this software may not be called "Apache", nor may "Apache" appear in their name,
without prior written permission of the Apache Software Foundation.
THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
DAMAGE.
JDOM.JAR
Copyright (C) 2000-2002 Brett McLaughlin & Jason Hunter. All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1.
Redistributions of source code must retain the above copyright notice, this list of conditions, and the following disclaimer. 2. Redistributions in
binary form must reproduce the above copyright notice, this list of conditions, and the disclaimer that follows these conditions in the documentation
and/or other materials provided with the distribution. 3. The name "JDOM" must not be used to endorse or promote products derived from this
software without prior written permission. For written permission, please contact license@jdom.org. 4. Products derived from this software may not
be called "JDOM", nor may "JDOM" appear in their name, without prior written permission from the JDOM Project Management (pm@jdom.org).
In addition, we request (but do not require) that you include in the end-user documentation provided with the redistribution and/or in the software
itself an acknowledgement equivalent to the following: "This product includes software developed by the JDOM Project (http://www.jdom.org/)."
Alternatively, the acknowledgment may be graphical using the logos available at http://www.jdom.org/images/logos.
THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
EVENT SHALL THE JDOM AUTHORS OR THE PROJECT CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Sun
Sun Microsystems, Inc. Sun, Sun Microsystems, the Sun Logo Sun, the Sun logo, Sun Microsystems, JavaBeans, Enterprise JavaBeans, JavaServer
Pages, Java Naming and Directory Interface, JDK, JDBC, Java, HotJava, HotJava Views, Visual Java, Solaris, NEO, Joe, Netra, NFS, ONC, ONC+,
OpenWindows, PC-NFS, SNM, SunNet Manager, Solaris sunburst design, Solstice, SunCore, SolarNet, SunWeb, Sun Workstation, The Network Is
The Computer, ToolTalk, Ultra, Ultracomputing, Ultraserver, Where The Network Is Going, SunWorkShop, XView, Java WorkShop, the Java
Coffee Cup logo, Visual Java, and NetBeans are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and other
countries.
Indiana University Extreme! Lab Software License
Version 1.1.1
Copyright (c) 2002 Extreme! Lab, Indiana University. All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1.
Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary
form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials
provided with the distribution. 3. The end-user documentation included with the redistribution, if any, must include the following acknowledgment:
"This product includes software developed by the Indiana University Extreme! Lab
(http://www.extreme.indiana.edu/)." Alternately, this
acknowledgment may appear in the software itself, if and wherever such third-party acknowledgments normally appear. 4. The names "Indiana
University" and "Indiana University Extreme! Lab" must not be used to endorse or promote products derived from this software without prior written
permission. For written permission, please contact http://www.extreme.indiana.edu/. 5. Products derived from this software may not use "Indiana
University" name nor may "Indiana University" appear in their name, without prior written permission of the Indiana University.
THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
EVENT SHALL THE AUTHORS, COPYRIGHT HOLDERS OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
DAMAGE.
Phaos
This Software is derived in part from the SSLavaTM Toolkit, which is Copyright ©1996-1998 by Phaos Technology Corporation. All Rights
Reserved. Customer is prohibited from accessing the functionality of the Phaos software.
W3C
W3C® SOFTWARE NOTICE AND LICENSE
This work (and included software, documentation such as READMEs, or other related items) is being provided by the copyright holders under the
following license. By obtaining, using and/or copying this work, you (the licensee) agree that you have read, understood, and will comply with the
following terms and conditions.
Permission to copy, modify, and distribute this software and its documentation, with or without modification, for any purpose and without fee or
royalty is hereby granted, provided that you include the following on ALL copies of the software and documentation or portions thereof, including
modifications: 1.The full text of this NOTICE in a location viewable to users of the redistributed or derivative work. 2.Any pre-existing intellectual
property disclaimers, notices, or terms and conditions. If none exist, the W3C Software Short Notice should be included (hypertext is preferred, text
is permitted) within the body of any redistributed or derivative code. 3. Notice of any changes or modifications to the files, including the date changes
were made. (We recommend you provide URIs to the location from which the code is derived.)
THIS SOFTWARE AND DOCUMENTATION IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR
WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS
FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENTATION WILL NOT INFRINGE ANY
THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.
COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING
OUT OF ANY USE OF THE SOFTWARE OR DOCUMENTATION.
The name and trademarks of copyright holders may NOT be used in advertising or publicity pertaining to the software without specific, written prior
permission. Title to copyright in this software and any associated documentation will at all times remain with copyright holders.
5
Contents
About This Book. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1 Welcome to exteNd Composer and CICS RPC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Before You Begin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
About CICS RPC Connect. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
What is CICS RPC?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
About exteNd’s CICS RPC Component. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
What Can You Build Using the CICS RPC Component Editor? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2 Getting Started with the CICS RPC Component Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
The Sample Transaction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Creating a CICS RPC Connection Resource . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
About Connection Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Performance Parameters and Connection Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
About Constant and Expression Driven Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
About Code Page Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Creating XML Templates for Your Component . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3 Creating a CICS RPC Component . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Before Creating a CICS RPC Component. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
About the CICS RPC Component Editor Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
About the CICS RPC Native Environment Pane. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
About CICS RPC Specific Menu Bar Items. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Auto Map Copybook . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
About CICS RPC Specific Context Menu Items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Creating Input Sample Documents from a Copybook with Auto Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Creating Output Sample Documents from a Copybook with Auto Map. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Creating an Input and Output XML Template Manually. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
4 Performing CICS RPC Actions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
About Actions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
About CICS RPC Specific Actions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
CICS RPC Specific Expression Builder Extensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Using Other Actions in the RPC Component Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Handling Errors and Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
ECI Connection Error Messages. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Data Type Translation Error Messages. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
A List of Data Types Supported . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
B List of Characters for Data Types Supported. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
C Environmental Differences between Animation Testing and Deployment Testing . . . . . . . . . . . . . . . . . . . . . . . . . . 37
D CICS RPC Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
E List of Code Pages Supported by Java. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
6 CICS RPC Connect User’s Guide
7
About This Book
Purpose
This guide describes how to use the CICS RPC Component Editor, which is the design-time portion of
the exteNd Composer CICS RPC Connect.
Audience
This book is for systems analysts, programmers, and others who intend to build applications or services
that require a CICS-facing component.
Prerequisites
This book assumes prior familiarity with the exteNd Composer design-time environment and Composer
application-building metaphors. You should also be familiar with CICS RPC concepts.
Additional documentation
For the complete set of Novell exteNd documentation, see the Novell Documentation Web Site
(http://www.novell.com/documentation-index/index.jsp).
8 CICS RPC Connect User’s Guide
Welcome to exteNd Composer and CICS RPC 9
1 Welcome to exteNd Composer and CICS RPC
Before You Begin
Welcome to the CICS RPC Connect Guide. This Guide is a companion to the exteNd Composer Users
Guide, which details how to use all the features of Composer, except the Connect Component Editors.
So, if you haven’t looked at the Composer Users Guide yet, please familiarize yourself with it before
using this Guide.
Novell exteNd Composer provides separate Component Editors for each Connect, like CICS RPC. The
special features of each component editor are described in separate Guides like this one.
If you have been using exteNd Composer, and are familiar with the core component editor, the XML Map
Component Editor, then this Guide should get you started with the CICS RPC Component Editor.
Before you begin working with the CICS RPC Connect, you must have it installed into your existing
exteNd Composer. Likewise, before you can run any Services built with this Connection the Composer
Enterprise Server environment, you must have already installed the Server software for this Connect into
Novell exteNd Enterprise Server.
NOTE: To be successful with this Component Editor, you must be familiar with the basics of CICS and
the COBOL programming language as well as the programs with which you wish to interface.
About CICS RPC Connect
Novell exteNd Composer is built upon a simple hub and spoke architecture. The hub is a robust XML
transformation engine that accepts requests via XML documents, performs transformation processes on
those documents, and interfaces with XML enabled applications which returns a XML response
document. The spokes or Connects are plug-in modules that “XML enable” sources of data that are not
XML aware, bringing their data into the hub for processing as XML. These data sources can be anything
from legacy COBOL applications to Message Queues to HTML pages.
CICS RPC Connect can be categorized by the integration strategy each one employs to XML enable an
information source. The integration strategies are a reflection of the major divisions used in modern
systems designs for Internet-based computing architectures. Depending on your B2B needs, and
architecture of your legacy applications, exteNd can integrate your business systems at the User
Interface, Logic, or Data Levels.
10 CICS RPC Connect User’s Guide
What is CICS RPC?
CICS RPC is an acronym for Customer Information Control System - Remote Procedure Call. The CICS
RPC Connect XML enables legacy system data using the Logic integration strategy. The CICS RPC
component provides the ability to interface with CICS managed programs using CICS’ External Call
Interface (ECI) and exchange data directly with the programs running in a CICS Region using the
standard communication area commonly referred to as the DFHCOMMAREA. Novell exteNd relies on
being provided a representation of the communication area as is often defined in applications via a
copybook.
The Novell exteNd CICS RPC Connect was designed specifically to work in the CICS environment
through IBM’s CICS Java Gateway. The Java gateway can reside on the same platform as the CICS
region or on a separate platform depending on your system architecture. CICS is an IBM transaction-
processing environment that often resides on an IBM mainframe using IBM’s proprietary EBCDIC
character-encoding scheme, but can also be run under IBM’s TXSeries product line on other platforms
that support other character encoding schemes.
CICS RPC Connect uses copybook representation of the DFHCOMMAREA as the data interface
presented to the XML transformation hub. These copybooks appear in the native environment pane of the
CICS RPC Component Editor. Once there, the data can be converted, transformed, or transferred the
same as any other XML document.
RPC Copybook Interface appears in the
Native Environment pane
Welcome to exteNd Composer and CICS RPC 11
About exteNd’s CICS RPC Component
Much like the XML Map component, the CICS RPC component is designed to map, transform, and
transfer data between two different XML templates (i.e., request and response XML documents).
However, it is specialized to make a connection to a CICS program via ECI, process the data using
elements from a DOM, and then map the results to an output DOM. You can then act upon the output
DOM in any way that makes sense for your organization, including displaying the output to a web site.
In essence, you’re able to push XML data into and/or pull data as XML from a legacy system without
ever having to alter the legacy system itself. A CICS RPC Component can perform simple data
manipulations, such as mapping and transferring data from one XML document to another, or from an
XML document to a program. It can also perform sophisticated manipulations, such as performing multi
row mapping (in reference to an OCCURS clause). The CICS RPC Component can also perform all the
actions available in a XML Map Component including; process XSL, send mail, and post and receive
XML documents using the HTTP protocol.
The following illustration shows how a CICS RPC component uses an ECI connection to interact with
data on the mainframe.
What Can You Build Using the CICS RPC Component Editor?
The CICS RPC Component Editor allows you to extend any XML integration application you are
building (refer to the exteNd Composer Users Guide) to include any CICS business application that
supports ECI interactions. For example, you may have an application that retrieves the description,
picture, price and inventory status of a product from the database(s) that are updated on a scheduled basis
and displays in a Web browser. By using the CICS RPC Component Editor, you can now get the current
product information from the operational systems and the static information (e.g., the picture) from the
database(s) and merge the information from these separate sources before it displays to a user. This
provides the same current information to both internal and external users.
XML Request Input
XML Response Output Action Model
Copybook Representation
12 CICS RPC Connect User’s Guide
Getting Started with the CICS RPC Component Editor 13
2 Getting Started with the CICS RPC Component
Editor
The Sample Transaction
Throughout this guide a prototypical COBOL program called SKUT02 will be used to illustrate the most
interesting features of the CICS RPC Connect. SKUT02 is designed to perform read-only operations that
query an Inventory system. A query is defined with three parameters. The first is a process switch
identifying the type of operation to be performed (READ, UPDATE, etc.) For our purposes, this switch
will always be set to R for READ. The second parameter is the specific SKU or product ID to obtain
information about it. The third parameter is a switch specifying the information returned from the inquiry
to be either a text message or an inventory record. The message will indicate that the item exists or
doesn’t exist. The record will contain data or be returned blank.
¾ Steps commonly used to create a new CICS RPC Component
1
Obtain or create copies of the host program DFHCOMMAREA definitions as copybooks and make
them accessible from your local machine.
2 Create a CICS RPC Component.
3 Create an Input XML Template and Sample Documents (or you can optionally use the Auto Map
feature to do this for you).
4 Create Map Actions moving data from the Input DOM into the Copybook (or you can optionally
use the Auto Map feature to do this for you).
5 Create an Execute ECI Action.
6 Repeat steps 3 and 4 for Output.
7 Test the Component.
Creating a CICS RPC Connection Resource
Before you create a CICS RPC Component, you need to create a Connection Resource to access the
mainframe program.
About Connection Resources
When you create a Connection Resource for the CICS RPC Connect, select ECI CICS RPC Connection.
The ECI CICS RPC Connection is used when you want to connect to a CICS TCP protocol application.
This connection allows you to get through the TCP/IP port on the host to the CICS gateway.
14 CICS RPC Connect User’s Guide
Performance Parameters and Connection Resources
When using the CICS Transaction Gateway with exteNd Composer, you want to be sure to tune the
gateway for the applications you will be using. Doing this requires knowledge of how many simultaneous
users are expected to be using the Composer service. With this knowledge there are two gateway
parameters which can be set to help tune the connections. The parameters are: initworker and
initconnection.
Initworker represents the initialized number of worker threads. Initconnection represents the initialized
number of connections. These two parameters can be set as command line parameters on startup of the
gateway or in the ctg.ini file for the 3.1.x version of the gateway or in the gateway.properties file for the
3.0 version of the gateway.
As mentioned above, knowledge of the workload for the application is needed to set these parameters
appropriately. For example, if you are expecting 50 concurrent users for the application, then you would
set both the initworker and initconnection to 50. The examples below demonstrate how to set the
parameters via a command line in the ini files.
To set them as command line parameters, use the switches -initconnect=50 -initworker=50 on startup of
the gateway.
For version 3.1.x of the gateway, the initconnect and initworker parameters are set in the ctg.ini file.
Below is a sample of the SECTION GATEWAY from the ctg.ini file. showing the init lines.
For version 3.0 of the gateway, the initconnect and initworker are set in the Gateway.properties file.
Below is a sample of the Gateway.properties files showing the init lines. It is recommended that you
upgrade to the version 3.1 since IBM is dropping support for version 3.0
SECTION GATEWAY
closetimeout=20000
ecigenericreplies=on
initconnect=50
initworker=50
maxconnect=100
maxworker=100
noinput=off
nonames=off
notime=off
tfile=ctg.trc
workertimeout=20000
protocol@tcp.handler=com.ibm.ctg.server.TCPHandler
protocol@tcp.parameters=connecttimeout=5000;idletimeout=600000;pingfrequency=600
00;port=2006;solinger=0;sotimeout=1000;
ENDSECTION
# Initial number of ConnectionManager threads
# initconnect=50
# Maximum number of ConnectionManager threads
# maxconnect=100
# Initial number of Worker threads
# initworker=50
# Maximum number of Worker threads
# maxworker=100
Getting Started with the CICS RPC Component Editor 15
About Constant and Expression Driven Connections
You can specify Connection parameter values in one of two ways: as Constants or as Expressions. A
constant based parameter uses the value you enter in the Connection dialog every time the Connection is
used. An expression based parameter allows you to set the value using a programmatic expression, which
can result in a different value each time the connection is used at runtime. This allows the Connection’s
behavior to be flexible and vary based on runtime conditions each time it is used.
For instance, one very simple use of an expression driven parameter in a ECI CICS Connection would be
to define the User ID and Password as PROJECT Variables (e.g.
PROJECT.XPath(“USERCONFIG/MyDeployUser”). This way when you deploy the project, you can
update the PROJECT Variables in the Deployment Wizard to values appropriate for the final deployment
environment. At the other extreme, you could have a custom script that queries a Java business object in
the Application Server to determine what User ID and Password to use.
¾ To switch a parameter from Constant driven to Expression driven:
1
Click the right mouse button in the parameter field you are interested in changing.
2 Select Expression from the context menu (as shown below) and the editor button will appear or
become enabled.
3 Click on the button and then create an ECMAScript expression that will evaluate to a valid
parameter value at runtime.
¾ To Create a CICS RPC Connection Resource:
1
From the File menu in exteNd Composer, select New > xObject, then open the Resource tab and
select Connection. The Create a New Connection Resource Wizard appears.
16 CICS RPC Connect User’s Guide
NOTE: Alternately, you can highlight Connection in the Composer window category pane, click
the right mouse button, then select New.
2 Enter a Name for the connection object.
3 Optionally, enter Description text.
4 Click Next.
5 Select ECI Connection from the Connection Type drop down menu.
NOTE: Use the ECI Connection type if you are connecting to a CICS application.
6
In the Server (cicscli.ini) field, enter the server name, CICS_ECI in our example.
7 In the User ID and Password fields, your system administrator will provide you with this name
and password, which is defined in a separate client initialization file.
8 In the Code Page field, from the drop down menu, select a code page dependent upon the remote
machine operating system character data standard.(i.e. CP037 for EBCDIC or 8859_1 for ASCII).
9 In the Machine Type field, from the drop down menu, select the target platform of your CICS
Region/Server (MVS, OS2, NT, AIX).
10 In the Floating Point Format field, from the drop down menu, select a name dependent upon the
machine type selected: IBM or IEEE .
11 In the Endian field, from the drop down menu, select the order of the most/least significant bytes in
integers (BIG if the most significant byte precedes the least significant byte in memory, otherwise
select LITTLE).
12 If a component that uses this connection will be running under XA transaction control, check the
Enlist in XA transactions checkbox.
NOTE: This option has no effect at design time. It affects runtime behavior only.
13
Optionally click the Test button to verify that the connection is valid. (A live connection will be
attempted.)
14 Optionally click on the Default checkbox if you wish the connection to be saved as a default
connection setting for CICS RPC Components.
15 Click Finish to save your connection.
Getting Started with the CICS RPC Component Editor 17
About Code Page Support
Code Page support in exteNd Composers Connection Resources allows you to specify which character
encoding scheme to use when translating characters sent between exteNd Composer and other host
systems. Novell exteNd uses Unicode character encoding (the Java and XML standard). Existing legacy
and other host systems use a variety of character encoding schemes (e.g., Code Pages) specific to their
language or usage. Therefore, a mechanism is needed to translate the character encoding between these
systems if they are to communicate with each other. This is handled in exteNd Composer by specifying
the Code Page used by a host system in the Connection Resource used to access that system. Refer to
Appendix E for list of Code Pages supported by Java.
Creating XML Templates for Your Component
Unique to CICS RPC, you can automatically create XML templates and sample documents based on the
copybook(s) you associate with the CICS RPC Component through the Auto Map selection in the
Component Menu. This feature should be used especially when the information from the application can
be used by multiple services or the CICS program is a multi use program (e.g., a program that performs
all types of information access: inquiry, update, insert and delete).
However, you can create your own XML templates prior to designing your component. See Chapter 5,
Creating XML Templates in the exteNd Composer Users Guide for more information. Use this option
when the component uses only a portion of data available in the Copybook.
Also, if your component design calls for any other xObject resources such as custom scripts or code table
maps, it is best to create these before creating the CICS RPC Component. For more information, see the
exteNd Composer User’s Guide.
18 CICS RPC Connect User’s Guide
Creating a CICS RPC Component 19
3 Creating a CICS RPC Component
Before Creating a CICS RPC Component
As with all Novell exteNd components, the first step in creating a CICS RPC component is to specify the
XML templates needed. For more information, see Creating a New XML Template in the Composer
Users Guide.
bold
If you decide to use the Auto Map feature to create your XML templates and sample documents, then you
will use the {System} and {ANY} choices for the Input and Output templates when initially creating the
CICS RPC component.
Also, as part of the process of creating a CICS RPC component, you can select a CICS RPC connection
or you can create a new one. If you create the connection beforehand, then it is available to all new CICS
RPC components as a selection.
To create a new CICS RPC Component:
1 Select File>New > xObject, then open the Component tab and select CICS RPC in exteNd
Composer.
NOTE: Alternatively, under Component in the Composer window category pane you can highlight
CICS RPC, click the right mouse button, then select New.
2 The Create a New CICS RPC Component Wizard appears.
3 Enter a Name for the new CICS RPC Component.
4 Optionally, enter Description text.
5 Click Next. The XML Input/Output Property Info panel of the New CICS RPC Component Wizard
appears.
20 CICS RPC Connect User’s Guide
6 Specify the Input template as follows.
7 Specify the Input and Output templates as follows.
If you don’t plan to use the Auto Map feature, type in a name for the template under Part if you
wish the name to appear in the XML Editor as something other than “Input”.
If you don’t plan to use the Auto Map feature, select a Template Category if it is different than
the default category.
If you don’t plan to use the Auto Map feature, select a Template Name from the list of XML
templates in the selected Template Category.
To add additional input XML templates, click Add and choose a Template Category and
Template Name for each.
To remove an input XML template, select an entry and click Delete.
8 Select an XML template for use as an Output Part using the same steps outlined above.
NOTE: For most new CICS RPC components, you will specify an input or output XML
template that contains no structure by selecting {System}{ANY} as the input and output template and
then use the auto-map tool. For more information, see “Creating an Output Part without Using a
Template” in the User’s Guide.
9
Click Next. The Temp and Fault XML Template panel appears.
10 If desired, specify a template to be used as a scratchpad under the “Temp Message” pane of the
dialog window. This can be useful if you need a place to hold values that will only be used
temporarily during the execution of your component or are for reference only. Select a Template
Category if it is different than the default category. Then select a Template Name from the list of
XML templates in the selected Template Category.
  • Page 1 1
  • Page 2 2
  • Page 3 3
  • Page 4 4
  • Page 5 5
  • Page 6 6
  • Page 7 7
  • Page 8 8
  • Page 9 9
  • Page 10 10
  • Page 11 11
  • Page 12 12
  • Page 13 13
  • Page 14 14
  • Page 15 15
  • Page 16 16
  • Page 17 17
  • Page 18 18
  • Page 19 19
  • Page 20 20
  • Page 21 21
  • Page 22 22
  • Page 23 23
  • Page 24 24
  • Page 25 25
  • Page 26 26
  • Page 27 27
  • Page 28 28
  • Page 29 29
  • Page 30 30
  • Page 31 31
  • Page 32 32
  • Page 33 33
  • Page 34 34
  • Page 35 35
  • Page 36 36
  • Page 37 37
  • Page 38 38
  • Page 39 39
  • Page 40 40
  • Page 41 41
  • Page 42 42
  • Page 43 43
  • Page 44 44

Novell exteNd 5.2 User guide

Type
User guide

Ask a question and I''ll find the answer in the document

Finding information in a document is now easier with AI