What was New in Version 9

This document covers the following topics:


High Availability

Under High Availability we understand an environment with engineered redundancy which, if any one component fails, guarantees the integrity of the system as a whole. To achieve high availability, EntireX uses existing third-party clustering technology.

See also High Availability in EntireX.

Configuration Enhancements

Multiple enhancements have been made to simplify configuration of many EntireX components:

Simplified Configuration for DIV Persistent Store

The persistent store handler for Data In Virtual (DIV) has been enhanced. Set PSTORE-VERSION=4 to use the new handler, which requires much less configuration data. See PSTORE-VERSION.

RPC Parameters

New parameters are available to simplify configuration of RPC servers:

  • marshalling
    For Batch RPC Server and IMS RPC Server, new parameter marshalling is used together with server-side mapping files and replaces the complex parameter runoption, which is now deprecated.

  • workermodel
    For Batch RPC Server, new parameter workermodel replaces parameters minworker, maxworker and endworker, which are now deprecated.

    Examples:

    Workermodel=(SCALE, 1,5,fastshrink) replaces MinWorker=1; MaxWorker=5; EndWorker=Immediately
    Workermodel=(SCALE, 3,10,slowshrink) replaces MinWorker=3; MaxWorker=10; EndWorker=Timeout
    Workermodel=(FIX, 4) replaces MinWorker=4; MaxWorker=4; EndWorker=Never

To reflect these new parameters, a new configuration file is provided. See member CONFIG in the source library EXP990.SRCE. All deprecated parameters are still supported, but may be dropped in a future version; there is currently no need to adapt your configuration file, although this is recommended.

Dynamic Memory Management

Dynamic memory management is a feature to handle changing Broker workload without any restart of the Broker task. It increases the availability of the Broker by using various memory pools for various Broker resources and by being able to use a variable number of pools for the resources. This feature was available in previous versions of EntireX but is now activated by default. See Dynamic Memory Management under Broker Resource Allocation and DYNAMIC-MEMORY-MANAGEMENT under Broker Attributes.

Specifying poolsize using Java System Property

Parameter poolsize for specifying the maximum number of socket connections with Java-based EntireX applications can now be set using the new Java property entirex.socket.poolsize. See Socket Parameters for TCP and SSL/TLS Communication under Writing Advanced Applications - EntireX Java ACI.

RPC Security

The Batch, CICS, IMS, UNIX, Windows, Micro Focus and .NET RPC Servers now provide logic to detect the security setup of the broker kernel automatically. This means the RPC server option KERNELSECURITY (KSEC under CICS) is now deprecated. The parameter is currently still supported for reasons of compatibility.

EntireX and the Cloud

Amazon Elastic Compute Cloud (Amazon EC2) is a web service that provides resizable compute capacity in the cloud. It is designed to make web-scale computing easier for developers. EntireX supports Amazon EC2 on the following platforms:

  • Windows Server 2008 Standard and Enterprise editions (64-bit)

  • Red Hat Enterprise Linux Server 6

See Platform Coverage for full list of supported platforms.

Security Enhancements

Additional Authorization Call to EntireX Security

An additional authorization check is now performed for a user against a specified application in a RACF security environment. This prevents, for example, a password being revoked for a user who does not have access at all to a particular application. See APPLICATION-NAME.

Support of UsernameToken

The XML/SOAP RPC Server uses UsernameToken security for a Web service if the configuration contains the attribute usernameToken in <xmm>. The XML/SOAP RPC Server supports two kinds of UsernameToken:

  • PasswordText

  • PasswordDigest

See XML/SOAP RPC Server with UsernameToken under UNIX | Windows.

Workbench Enhancements

IDL Tester

In earlier versions, the IDL Tester cluttered up your projects with multiple Java assets. These assets are now generated into your temp directory and are removed automatically when the Designer is shut down. The Java Wrapper can still generate test classes into a Java project if required.

COBOL Wrapper

You can now customize the names for the generated COBOL client interface objects. See Customize Automatically Generated Client Names under Generating COBOL Source Files from Software AG IDL Files.

You can also customize the names for the generated COBOL server. See Customize Automatically Generated Server Names under Generating COBOL Source Files from Software AG IDL Files.

For IDL unbounded arrays (see array-definition under Software AG IDL Grammar) which are mapped to COBOL tables with the DEPENDING ON clause (see COBOL Tables with Variable Size - DEPENDING ON Clause), index variables in the LINKAGE SECTION of client interface objects and server skeletons are generated unsigned, that is, with the data format PIC 9(8) BINARY instead of PIC 9 S(8) BINARY. See ODOTAB-A1-11 in the example below.

IDL:
1 ODOTAB-A1    (A1/V11)

Generated LINKAGE SECTION:
02 ODOTAB-A1-11                           PIC 9(8) BINARY.
02 ODOTAB-A1X OCCURS 1 TO 11 DEPENDING ON ODOTAB-A1-11.
 03 ODOTAB-A1                             PIC X(1).

Natural Wrapper

The Natural Wrapper allows you to customize the names for the generated Natural client interface objects and to enable/disable - for each IDL program - the generation of Natural client test programs. See Step 2: Customize Natural Client Names under Using the Natural Wrapper for the Client Side within NaturalONE

The Natural Wrapper also generates RPC servers; you can customize the names for these. See Using the Natural Wrapper for the Server Side within NaturalONE.

There are no longer any restrictions in IDL program names; these can be longer than eight characters or even contain characters not allowed in Natural names. The names are adapted during wrapping.

IDL Extractor for XML Document

The Options for Target Programming Language page has been redesigned. Generated names for IDL library and IDL programs depend on the selected target programming language and correspond to the customized name feature of the Natural Wrapper and COBOL Wrapper. Option combinations that do not match the selected target programming language are disabled and cannot be selected. See Step 5: Specify Options for Target Programming Language.

IDL Extractor for XML Schema

The Options for Target Programming Language page has been redesigned. Generated names for IDL library and IDL programs depend on the selected target programming language and correspond to the customized name feature of the Natural Wrapper and COBOL Wrapper. Option combinations that do not match the selected target programming language are disabled and cannot be selected. See Step 5: Specify Options for Target Programming Language.

IDL Extractor for WSDL

The Options for Target Programming Language page has been redesigned. Generated names for IDL library and IDL programs depend on the selected target programming language and correspond to the customized name feature of the Natural Wrapper and COBOL Wrapper. Option combinations that do not match the selected target programming language are disabled and cannot be selected. See Step 6: Specify Options for Target Programming Language in the IDL Extractor for WSDL documentation.

IDL Extractor for Integration Server

The Select the Integration Server Package to Extract page has been redesigned. Generated names for IDL library and IDL programs depend on the selected target programming language and correspond to the customized name feature of the Natural Wrapper and COBOL Wrapper. Option combinations that do not match the selected target programming language are disabled and cannot be selected. See Step 3: Select the Integration Server Package to Extract.

XML Mapping Editor

SOAP mapping with mapping parameter Generate Array Envelope Element has been changed: The generation for simple type arrays also respects the setting of this parameter. To enable the old behavior (arrays of type simple always get a wrapping element) add the following line to eclipse.ini:

-Dentirex.xmlmappingeditor.enableSimpleTypeWrapping=false

New ACI Version 10

With this new ACI version you can define a variable-sized BROKER-ID, the so-called LONG-BROKER-ID. The ACI structure contains the new field LONG-BROKER-ID-LENGTH. If the value of this field is non-zero, specify the value of the LONG-BROKER-ID directly after the ACI control block. The LONG-BROKER-ID overrides any BROKER-ID value.

With the LONG-BROKER-ID you can now specify numeric IPv6 addresses. See LONG-BROKER-ID-LENGTH under Broker ACI Fields.

Brainstorm Ideas

Brainstorm is a one-stop portal for all Software AG customers to submit feature requests, vote on ideas that have been posted by other customers and get your voice heard. All product categories are moderated by product managers, and ideas get responded to and updated on a regular basis. Here is a selection of Brainstorm ideas that have been implemented in EntireX. The number in square brackets is the Brainstorm ID.

Documentation Enhancements

In addition to documentation for the new features listed on this page, the following topics have also been addressed:

  • Common Integration Scenarios
    Common integration scenarios are described, with cookbooks and links to the relevant sections of the documentation. See, for example, Calling COBOL from Integration Server.

  • RPC Servers
    The documentation for Batch, CICS and IMS RPC Servers has been thoroughly reworked; documentation for other RPC servers has also been enhanced.

  • High Availability
    Under High Availability we understand an environment with engineered redundancy which, if any one component fails, guarantees the integrity of the system as a whole. To achieve high availability, EntireX uses existing third-party clustering technology. A new documentation section provides an introduction to clustering technology and describes how to set up in EntireX the redundant RPC servers and brokers you will need to achieve high availability. See High Availability in EntireX.

  • EntireX and Web Services
    The introduction to EntireX support for Web services has been enhanced and provides links to the relevant sections of the documentation. See EntireX and Web Services.

Other Changes and Enhancements

IDMSETB

A new broker stub is provided to support IDMS/DC. See IDMSETB under Administering Broker Stubs and Using the COBOL Wrapper for IDMS/DC with Call Interfaces (z/OS).

Support of IPv6

SSL and TCP/IP transport is now supported in IPv4 and IPv6 networks. Mixed IPv4 and IPv6 scenarios are also supported. See IPV6.

New API RPC-CNTX

Using API RPC-CNTX you can provide a context for Natural RPC client applications without setting a STEPLIB or copying APIs from SYSEXT to user libraries. See Interface RPC-CNTX for the Natural RPC Client Programmer.

Deploying Packages in Integration Server

The deploying of packages in Integration Server has been enhanced in this release.

EXXMSG - Command-line tool for Displaying Error Messages

EXXMSG is a command-line tool that displays the text of an EntireX error message for a supplied error number. It is available on all platforms.

See EXXMSG - Command-line Tool for Displaying Error Messages.

Modified Codepage Handling with CICS ECI RPC Server and IMS Connect RPC Server

The CICS ECI RPC Server and IMS Connect RPC Server now use only the encoding specified with the parameter entirex.bridge.targetencoding when communicating with the EntireX Broker. This behavior is new in this version. Make sure you have enabled conversion in the Broker attribute file so the data can be converted correctly. This is typically achieved by setting service-specific attribute CONVERSION to "SAGTCHA".

See entirex.bridge.targetencoding under Configuring the CICS ECI Side | Configuring the IMS Connect Side in the respective RPC server documentation.

CICS RPC Server

A user exit is provided to influence/control the logic of the CICS RPC Server. See User Exit COBUEX02 in the CICS RPC Server documentation.

Job Names and Transaction IDs in SMF Records

Broker ACI field APPLICATION-NAME has been enhanced to improve logging and accounting. If the program that issued the broker call is running on a mainframe system, the eight-byte job name is used as application name. If the job name is shorter than eight bytes, it is padded with underscore characters. If the z/OS program issuing the broker call is running in a TP monitor (except IDMS/DC), a dash sign is set as ninth byte. The following eight bytes from position 10-17 contain monitor-dependent data. See APPLICATION-NAME for details.

Whitespace Handling in the XML/SOAP Runtime

The default handling for preserving whitespace in XML and Web services scenarios has been enhanced. The XML/SOAP Runtime trims whitespace in values by default. The whitespace handling is also determined by defining attribute xml:space (see XML specification) on element(s). The attribute xml:space has the higher priority and is inherited from children of the element recursively. See Whitespace Handling under Writing Advanced Applications with the XML/SOAP Wrapper.

Administration Service Commands

The administration service monitors and controls all local brokers; remote brokers can also be monitored. The administration service is addressed via the System Management Hub or the administration service command-line utility etbsrv. To run the commands from utility etbsrv, System Management Hub is not required. This feature was designed to be used in a clustering environment, but can also be used in a standard environment.

See also Administration Service Commands under UNIX | Windows.

License Key Handling under z/OS

Under z/OS, the EntireX Broker no longer starts up if the license key is invalid.