Concepts
Concepts
Version 11.0.0
May 2024
This document applies to webMethods EntireX Version 11.0.0 and all subsequent releases.
Specifications contained herein are subject to change and these changes will be reported in subsequent release notes or new editions.
Copyright © 1997-2024 Software AG, Darmstadt, Germany and/or Software AG USA, Inc., Reston, VA, USA, and/or its subsidiaries
and/or its affiliates and/or their licensors.
The name Software AG and all Software AG product names are either trademarks or registered trademarks of Software AG and/or
Software AG USA, Inc. and/or its subsidiaries and/or its affiliates and/or their licensors. Other company and product names mentioned
herein may be trademarks of their respective owners.
Detailed information on trademarks and patents owned by Software AG and/or its subsidiaries is located at
http://softwareag.com/licenses.
Use of this software is subject to adherence to Software AG's licensing conditions and terms. These terms are part of the product
documentation, located at http://softwareag.com/licenses/ and/or in the root installation directory of the licensed product(s).
This software may include portions of third-party products. For third-party copyright notices, license terms, additional rights or re-
strictions, please refer to "License Texts, Copyright Notices and Disclaimers of Third-Party Products". For certain specific third-party
license restrictions, please refer to section E of the Legal Notices available under "License Terms and Conditions for Use of Software AG
Products / Copyright and Trademark Notices of Software AG Products". These documents are part of the product documentation,
located at http://softwareag.com/licenses and/or in the root installation directory of the licensed product(s).
Use, reproduction, transfer, publication or disclosure is prohibited except as specifically provided for in your License Agreement with
Software AG.
iii
iv
1 About this Documentation
1
About this Documentation
Document Conventions
Convention Description
Bold Identifies elements on a screen.
Monospace font Identifies service names and locations in the format folder.subfolder.service,
APIs, Java classes, methods, properties.
Italic Identifies:
Variables for which you must supply values specific to your own situation or
environment.
New terms the first time they occur in the text.
References to other documentation sources.
Monospace font Identifies:
Product Documentation
You can find the product documentation on our documentation website at https://documenta-
tion.softwareag.com.
In addition, you can also access the cloud product documentation via https://www.software-
ag.cloud. Navigate to the desired product and then, depending on your solution, go to “Developer
Center”, “User Center” or “Documentation”.
Product Training
You can find helpful product training material on our Learning Portal at https://knowledge.soft-
wareag.com.
Tech Community
You can collaborate with Software AG experts on our Tech Community website at https://tech-
community.softwareag.com. From here you can, for example:
Product Support
Support for Software AG products is provided to licensed customers via our Empower Portal at
https://empower.softwareag.com. Many services on this portal require that you have an account.
If you do not yet have one, you can request it at https://empower.softwareag.com/register. Once
you have an account, you can, for example:
Data Protection
Software AG products provide functionality with respect to processing of personal data according
to the EU General Data Protection Regulation (GDPR). Where applicable, appropriate steps are
documented in the respective administration documentation.
5
Introduction to webMethods EntireX
See also Common Integration Scenarios, for example Calling COBOL from Integration Server.
EntireX Components
The graphic below provides an overview of platforms and functionality supported by EntireX.
High Availability
Many of the world's largest organizations including financial institutions, manufacturing, trans-
portation, and communication companies along with large government agencies, rely on the
availability and reliability of applications to deliver their most important business transactions
and data. These large-scale information systems consist of several hardware and software compon-
ents, each of which performs a particular function and is a critical-path to successful daily opera-
tions. If any of these components fail however, the outcome could vary drastically - from a single
user experiencing a slow-down in their order response time, to thousands of retail bank customers
not being able to access any of their cash assets. Creating a highly available system topology removes
any single points of failure from a large system, enabling another redundant component to effect-
ively take over the workload of the failed component. Improving availability ultimately leads to
a reduction in downtime, improved performance, and a better user experience.
Another IT concern is how to apply maintenance and upgrades to these important systems without
affecting users. In a highly available world, a system in need of maintenance can be taken out of
the workload pool and updated while the rest of the system continues to process service requests.
EntireX Broker
In general, EntireX can be compared to a hardware bus, adding new functions or applications to
the system by means of extender cards. Every application that is “plugged into” EntireX represents
a functional expansion, with the main purpose of the bus system being to provide a means of
communication between the individual components. This bus architecture provides organizations
with the foundation for state-of-the-art integrated electronic business applications. The EntireX
Broker, a high-performance message server, is the centerpiece of the EntireX Bus System.
The EntireX Broker offers support for multiple communication and component models and provides
the backbone for integration between an organization's applications and the internet.
The role of the EntireX Broker is to control communication among distributed application compon-
ents. It supports many types of communication models (asynchronous and synchronous, conver-
sational, request/reply and message-oriented) to support a wide variety of application integration
requirements. The Broker shields the communicating programs from platform and language-
specific issues by mapping requests and replies to its interface programs, the Advanced Commu-
nication Interface (ACI) stubs. At the protocol level, the Broker supports native TCP/IP.
With the EntireX Broker, companies benefit from the flexibility, ease of use and high-performance
characteristics that make it unique among Message Oriented Middleware (MOM)-based products.
Other features of the EntireX Broker include:
In creating an electronic business IT infrastructure, flexibility is a key requirement for the middle-
ware foundation. One area where flexibility is a must is in the way applications communicate with
each other. Because different applications may require different methods of communication, EntireX
provides support for a variety of different models:
■ Synchronous
Synchronous communication means the sender and receiver are active simultaneously. The re-
questing application sends its message and then stops processing while it waits for a reply
(blocking).
■ Asynchronous
Asynchronous is non-blocking communication where applications can be either concurrently
or non-concurrently executing.
■ Conversational
Conversational means participating programs interact with each other in the form of a dialog,
with each program responding in turn to information received from the other program.
■ Request/Reply
Request/Reply is based on a single request and a single return, rather than a conversation. The
sender is usually blocked.
■ Messaging-and-Queuing
Messaging-and-Queuing is based on intermediate message storage. The sending application
sends the message to the messaging middleware, which places it in a queue. The sender is
generally unblocked.
The EntireX Broker approach is unique among message queuing systems in that applications
never see the actual queues themselves, instead they only deal with the logical names of senders
and receivers. This provides an additional level of transparency for applications being integrated.
In addition, the Broker can reside on the network, on the sender's systems, the server side or on
any other machine in the network. The roles of clients and servers are not fixed but can change
dynamically within a conversation.
High Reliability
The EntireX Broker provides optional message persistence by storing message queues to a non-
volatile medium. Persistence ensures that messages reach their destination even in the event of a
system failure. EntireX can also group logically related client and server messages into units of
work that are committed to the EntireX Broker for further transmission when complete. In case
of failure on the server side, the receiving program can back out the whole unit of work, making
it available for processing later or by another server.
Server replication, automatic load balancing between replicated servers and automatic, dynamic
adjustment of the system environment ensures that client requests are answered quickly and re-
sources are put to efficient use. The EntireX Attach Service dynamically replicates and starts
servers, based on Broker requests for services. The way the Attach Service manages replicating
and starting servers also leads to an efficient balancing of the workload within an EntireX envir-
onment: the Attach Service registers as the Attach Server with the Broker and can receive attach
requests to start additional servers to avoid bottleneck situations. Workload balancing is achieved
using high and low water marks specified in the server definitions. The Attach Service keeps the
number of server replicas registered with the Broker between these levels and starts new replicas
when their number falls below the set minimum.
Before discussing the types of applications which can be plugged into the EntireX bus, it is best
to start with a short description of the basic communication mechanisms used by EntireX:
Communication with the Broker is handled through Advanced Communication Interface (ACI)
programs. The ACI has SEND and RECEIVE functions that provide the Broker-based communication
basis for point-to-point transmission between clients and servers on the EntireX bus.
EntireX RPC
EntireX's Remote Procedure Call (RPC) represents a high level of abstraction. It shields the applic-
ation developer from technical details such as addressing the (remote) server, establishing com-
munication, converting data formats, etc. The communication model used with RPC technology
is synchronous request/reply. The developer can use familiar call syntax (COBOL, PL/I, Java, C,
Visual Basic, etc.) and interfaces (XML/SOAP, .NET, DFHCOMMAREA etc.) to generate the ap-
propriate RPC client interface object automatically. The EntireX RPC is the underlying communic-
ation method used by Software AG's wrapper technology, described in further detail below.
Reliable RPC
In the architecture of modern e-business applications (such as SOA), loosely coupled systems are
becoming more and more important. Reliable messaging is one important technology for this type
of system.
Reliable RPC is the EntireX implementation of a reliable messaging system. It combines EntireX
RPC technology and persistence, which is implemented with units of work (UOWs).
EntireX “wraps” existing applications so that they can be accessed as “services”. The interfaces to
these services can be XML/SOAP, DCOM, Java etc. Whereas most new development is focused
on providing a web services interface, EntireX allows all these interface standards to work seam-
lessly together to meet customers' technology needs - i.e. manage the mix of technology adoption
that exists within the enterprise. The developer starts, for example, with an existing business
function that is likely needed in various applications such as a function for updating customer
information. This function could be implemented as a COBOL CICS transaction, a Natural subpro-
gram, a Linux C program, etc.
Using the Designer, this function can easily be turned into a reusable service by generating the
service metadata (service name and interface description) and optionally publish this metadata.
Once the service has been defined, it can be used / consumed from any application. The function
to update customer information could be provided in an internal web application, an Online
Purchase application, the billing system, etc. These applications can now, thanks to EntireX, access
the business function transparently as if it was developed as part of the application using it. The
actual implementation details of the function are hidden by EntireX.
Java Applications
EntireX provides special Java class libraries to link applications written in Java to the EntireX bus.
■ Java Wrapper
The Java Wrapper provides access to RPC-based components from Java applications. Java
Wrapper enables you to develop both client and server applications written in Java. In addition,
Java applets can also be used as an RPC client.
■ EntireX Java ACI
EntireX Java ACI is a Java class library that provides Java programmers with access to the Broker
ACI. It enables the creation of both client and server applications in Java. Any of these can then
interact with each other and with other applications written in other languages on the same
network using EntireX Broker. The EntireX Java ACI also contains the framework necessary for
Java RPC requests.
XML Applications
■ XML/SOAP Wrapper
■ RPC Server for XML/SOAP
XML/SOAP Wrapper
An extension to the Java Wrapper provides XML communication to existing non-XML servers.
With no additional programming effort, data from existing applications (such as CICS transactions)
can be provided in XML format to electronic business applications. The EntireX XML/SOAP
Wrapper receives an XML document from a web server or Java application, translates it into a
remote procedure call (RPC) on an existing application, creates an XML document from the result
of this call, and sends it back.
The XML/SOAP Wrapper enables seamless integration with any technology based on XML over
HTTP, including SOAP. In terms of Software AG technology this means
■ Tamino can with Tamino X-Tensions directly interact with an XML/SOAP Wrapper provided
by EntireX to provide legacy integration support which enables a single XML view of XML and
non-XML data within the organization.
As web services architectures become increasingly common, Software AG has extended its
XML/SOAP Wrapper technology with the RPC Server for XML/SOAP. This server enables applic-
ations to consume web services simply and easily by encapsulating the implementation specifics.
Previously EntireX XML/SOAP Wrapper technology was focused on exposing and wrapping ex-
isting applications as web services, but now this technology is fully bidirectional. With the EntireX
RPC Server for XML/SOAP, any application integrated with EntireX can not only be exposed as
a web service (using the familiar XML/SOAP Wrapper), but it can also use existing web services
in the same way. This extends the service-oriented offering of EntireX by providing the ability to
use any available web service to extend the functionality of any EntireX service if desired.
EntireX can now be used as a simple mediator between any service/application and any available
web service. This technology enables even faster reaction to new business needs, because new
functionality can easily be added by calling an external web service.
Additionally, the RPC Server for XML/SOAP enhances EntireX as an interface to the new EntireX
XML Adapters as the adapters are web services.
Natural Applications
The Advanced Communication Interface (ACI) for Natural allows the Natural developer to interface
directly with EntireX Broker using an API suited to their needs. In addition, EntireX RPC provides
developers with a connectivity and wrapping capability which allows them to “object wrap” legacy
code in order to make it available as components in a wider enterprise object environment. EntireX
RPC enables client programs to access Natural RPC Server subprograms and 3GL RPC server
applications on mainframe, Linux and Windows platforms. EntireX RPC is fully compatible with
the Natural RPC facility.
CICS Applications
Again, the Advanced Communication Interface for 3GLs provides the 3GL developer with an in-
terface to the EntireX Broker. Easing the integration pains of legacy applications, the EntireX RPC
Server for z/OS CICS® provides calling of existing CICS transactions from client programs on
other platforms using EntireX RPCs.
IBM® MQ Applications
The RPC Server for IBM MQ is EntireX's interface to IBM's message-oriented middleware IBM® MQ.
This interface allows an application developer to write RPC client applications that can send or
read messages to/from a local or remote MQ queue.
DCOM / ActiveX is supported by most development tools on Windows and is what application
developers in the Windows world are familiar with. EntireX provides the following DCOM ad-
apters:
■ ActiveX Control
The ActiveX Control addresses developers who use DCOM-enabled application development
tools on the PC as ActiveX containers (for example, Visual Basic, PowerBuilder, or scripting
tools on the web server.) EntireX ActiveX Control enables integration of the desktop and the
web with mainframe or Linux-based server applications (“back ends”).
■ DCOM Wrapper
The EntireX DCOM Wrapper is a PC-based service program (a wizard) which uses the EntireX
ACI and RPC technology to generate DCOM-enabled components automatically. The wrapping
makes it possible to treat existing applications as ActiveX components. The DCOM Wrapper
provides access to server applications on server platforms such as z/OS, Linux or Windows and
many others. The DCOM Wrapper uses an Interface Definition Language (IDL) file that describes
the RPC interface and generates a Wrapper object on the basis of the interface description.
Enterprise Security
EntireX Security
EntireX Security allows seamless joining of authentication on the desktop with existing authoriz-
ation rules on the server (for example, RACF, ACF2 under z/OS) without introducing any new
APIs. EntireX Security provides protection for applications utilizing the Broker with functionality
that includes authentication for distributed application components, as well as authorization to
start and execute. All user and resource definitions are managed through RACF, CA Top Secret
and CA ACF2. In addition, customer-unique solutions are supported through exits for customized
solutions.
The goal of EntireX Security is to allow an organization to control the use of all applications, in-
cluding distributed components, from a central point. The result is that an organization can imple-
ment full, flexible control with a “one user = one definition” approach, enhancing previous invest-
ments in host-based security systems and infrastructures.
For non-mainframe environments, the authentication of EntireX users is performed against the
native Linux or Windows security system.
Transport Layer Security (TLS), and its predecessor, Secure Sockets Layer (SSL) are cryptographic
protocols. They provide communications security in computer networks. TLS and SSL use the
public-and-private key encryption system from RSA, which also includes the use of digital certi-
ficates.
See SSL/TLS, HTTP(S), and Certificates with EntireX for information on how to use SSL and TLS as
transport layers for EntireX.
Authorization Rules
An authorization rule is used to perform access checks for authenticated user IDs against lists of
services defined within the rule. This feature is available on z/OS, Linux and Windows using EntireX
Security on these platforms. Authorization rules can be stored in the Broker attribute file or in an
LDAP repository.
Application Management
Software AG Command Central is a tool that enables you to manage your Software AG products
remotely from one location. Command Central offers a browser-based user interface, but you can
also automate tasks by using commands to remotely execute actions from a terminal or custom
script (for example CI servers such as Jenkins, or generic configuration management tools such
as Puppet or Chef).
Command Central can assist with the following configuration, management, and monitoring tasks:
■ Infrastructure engineers can see at a glance which products and fixes are installed, where they
are installed, and compare installations to find discrepancies.
■ System administrators can configure environments by using a single web user interface or
command-line tool. Maintenance involves minimum effort and risk.
■ Release managers can prepare and deploy changes to multiple servers using command-line
scripting for simpler, safer lifecycle management.
■ Operators can monitor server status and health, as well as start and stop servers from a single
location. They can also configure alerts to be sent to them in case of unplanned outages.
Web services are programmable, distributed application components accessible on the web using
solely standard internet protocols. In contrast to the current “document web”, which specializes
in human interaction, web services are designed to be accessed by programs to form a new applic-
ation architecture, the “application web”.
SOAP (originally Simple Object Access Protocol) (SOAP 1.1) is a messaging and RPC protocol
designed for integrating heterogeneous web services in the internet. It defines a message format
in the Extensible Markup Language (XML) that can be transported over existing internet transport
protocols (HTTP, SMTP, FTP or others). By using standard XML, SOAP messages are self-describing,
that is, they carry enough information for a receiver to decompose and process the message in a
standard way. By using standard internet protocols, SOAP seamlessly fits into existing internet
infrastructure (for example, routers, firewalls, web servers).
In general, the architecture of the EntireX SOAP solution is web-server-based. For the XML/SOAP
Wrapper a Java interface can also be used. A web server module (SOAP handler) receives the
SOAP request, validates it and transforms the request into an RPC request (EntireX RPC or DCOM).
The result of the RPC request in turn is transformed into a SOAP response message and sent back
to the client. If an error occurs, a SOAP fault message is sent back to the client.
The EntireX XML/SOAP Wrapper enables XML-based communication to EntireX or Natural RPC
servers. From an incoming XML document, the XML/SOAP Wrapper extracts the information for
and assembles a call to an EntireX/Natural RPC Server. The result is converted into an outgoing
XML document. The XML/SOAP Wrapper also supports a SOAP mapping. This includes proper
handling of the SOAP envelope, parsing and validating SOAP documents in accordance with the
SOAP encoding rules, serializing RPC replies into SOAP responses and assembling correct SOAP
fault messages on errors. In addition, WSDL descriptions are generated automatically from the
XML mapping information for the EntireX RPC Servers.
Using the RPC Server for XML/SOAP, EntireX clients can be given access to any existing web
service. See RPC Server for XML/SOAP.