LegStar is the first open-source initiative in the domain of legacy application integration.
To get a general idea of LegStar, you can read the presentation document.
To latest version is described here.
Because COBOL is very often the legacy applications development language, LegStar focuses primarily on that language (Although nothing prevents future support for PLI or others).
Since most open-world languages, such as Java, have already been mapped to XML Schema, the approach we have taken in LegStar is to map COBOL to XML Schema and then let existing tools, such as, JAXB do the final mapping to the target language.
LegStar has introduced a COBOL binding language to describe how COBOL data items should map to XML Schema elements. That binding language is itself an extension to XML Schema.
The mapping process can start from an existing COBOL code fragment in which case you would use the COBOL Structures Mapping Generator, but you can also start from XML Schema, a Web Service WSDL file or even a Java class using the Complex Types Mapping Generator.
LegStar offers marshaling/unmarshaling capabilities. This is built on top of the standard JAXB framework which provides Java to XML binding. As a result of this combination, LegStar can convert mainframe data streams to Java objects and XML.
Conversions deal with the various COBOL numeric data types, code page conversions for character strings, fixed or variable size arrays. It also offers unique capabilities to deal with the COBOL REDEFINE clause.
Please note that conversions do not run on the mainframe itself therefore reducing the footprint of the solution on the mainframe.
These marshaling/unmarshaling capabilities can be used independently from the transport mechanisms also provided by LegStar.
LegStar provides a Web Service Generator which allows you to map mainframe programs to Web Service operations.
Input complex types and output complex types are mapped to COBOL structures as seen previously.
This feature is an implementation of the standard JAXWS Web Service API.
The Mainframe Invoker Runtime provides the runtime RPC mechanism. The invoker uses a binary Messaging protocol that optimizes the payload size. This significantly reduces resource consumption on the mainframe.
Here, the target legacy environment has primarily been IBM CICS, although nothing prevents the architecture from being extended to other legacy environments in the future.
LegStar fully supports the CICS channel/container mechanism in addition to the standard commarea. LegStar supports multiple input containers and multiple output containers.
In term of transport protocols to CICS, LegStar offers:
The LegStar Web Service Generator also has the capability to generate Proxy objects (actually Java servlets) based on target Web Services.
Once deployed, these Proxy servlets listen for requests from the mainframe and access the target Web Service on behalf of the mainframe client program.
The Mainframe to Web Service Runtime provides the servlet-based architecture needed to call the target Web Service.
These are typical use cases for LegStar.
Development steps:
To fully Web Service enable a CICS program which input and output are described by COBOL fragments, you would follow these steps:

Runtime architecture:
From a runtime perspective, the architecture would be similar to this:

Development steps:
To give a CICS program access to a remote Web Service, you would follow these development steps:

Runtime architecture:
From a runtime perspective, the architecture would be similar to this:
