In this section:
This extension provides support for COBOL copybook—enabling you to use Parasoft solutions to configure, send, validate, and virtualize copybook messages. The artifact you download from the Parasoft Marketplace is a builder executable. Run the executable to generate a JAR file that will be installed into SOAtest and/or Virtualize. The builder jar file that you downloaded is not the copybook jar that you will install into Virtualize/ SOAtest. The builder can be used to produce any number of copybook jar files. You can install multiple copybook jar files into Virtualize/SOAtest.
When the builder executes, it produces a consumable jar file that includes::
After generating and installing the copybook JAR, you will be able to create Copybook Responders (for Virtualize) and Copybook Clients (for SOAtest)—both of which allow you to work with copybook messages in Parasoft's standard graphical message trees, as well as in "literal" (plain text) mode.
This tool supports syntactically correct copybooks and includes:
The tool does not support OCCURS DEPENDING ON statements or COPY REPLACING statements.
The Copybook tool searches for copybook files in a list of directories provided at runtime. Within each directory, the tool searches a list of filenames and wildcards for copybook files to process.
We recommend that your copybook files have an extension that distinguishes them from COBOL source code (.cpy vs. .cob) or that you store the copybook files in separate directories from any COBOL source code.
Copybook files from Z/OS systems are limited to eight characters, but the Copybook tool does not require this.
If a copybook file contains a COPY statement, the Copybook tool resolves the name by checking for an identical file with the same extension as one provided at run time.
For example, if the copybook contains a
COPY ACCTDATA statement and the filename list was
*.cpy,*cbl, the copybook tool will attempt to find
ACCTDATA.cbl in the list of directories provided at runtime.
SOAtest and Virtualize support various types of requests (SOAtest) and Responders (Virtualize). These types can include XML, JSON, CSV, plain text and fixed length. When the output of Parasoft Copybook Builder is integrated into these products a new Copybook Message type is created. Each copybook becomes a Message Format for the Copybook format request and responder. Perform the following steps to use the Copybook Message type:
Generating the Copybook JAR
Run the com.parasoft.soavirt.messages.copybook-<version>.jar file using the following command to build read the copybook files and generate the JAR file that you will integrate into the UI:
The command uses the following arguments:
The example searches the following folders:
Any file that matches the wildcards *.cbl or *.cpy wil be processed as a copybook.
When the Copybook tool finishes, there will be two files created in the directory: copybook.jar and velocity.log. Assuming there are no errors, velocity.log can be deleted. Integrate the copybook.jar file as described in Integrating the Copybook Extension.
Integrating the Copybook Extension
The Copybook tool is implemented in the SOAtest and Virtualize UI as a system JAR file, which is output by executing the JAR in Generating the Copybook JAR.
You can also install extensions from the command line by adding the copybook.jar file to the system.properties.classpath property in your localsettings properties file. For example:
You also add the copybook.jar file to the VirtualAssets/system_jars folder (if this does not already exist, create it now). Make the following API call to reload the jar:
Using a Copybook in a Responder
You can generate Copybook Responders and Copybook Clients from traffic, or you can add them manually. If you are adding them manually, be sure to select the desired copybook from the Message Type drop-down. Once a copybook is selected, the tree will be populated based on that copybook. This example demonstrates how to create a Virtualize responder from a copybook.
You can repeat these steps to create a copybook request in your SOAtest environment.