Browse Prior Art Database

A methodology for creating data binding while exposing C applications as Web services Disclosure Number: IPCOM000203887D
Publication Date: 2011-Feb-08
Document File: 5 page(s) / 177K

Publishing Venue

The Prior Art Database


A data binding mechanism for legacy C/C++ business applications to expose as SOAP or RESTful Web services without changing or even re-compiling the C/C++ applications. This can be achieved by creating a C library for creating byte buffers from C/C++ data structures and compiling it using the alignment options used for the existing C/C++ business application. This library can be accessed using Java/JNI mechanism to create byte buffers from the C/C++ data structure and vise versa.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 45% of the total text.

Page 01 of 5

A methodology for creating data binding while exposing C applications as Web services

This disclosure applies to the field of exposing legacy applications (written in native languages such as C and C++) as SOAP based or REST style Web services for remote consumption by clients.

Generally Customers don't intend to change the code or even recompile the legacy applications running in production application servers. Developers face multiple challenges while modernizing such legacy applications written in C programming language. One of the major challenges would be data binding, it becomes even complex when the C application is compiled with a certain data structure alignment and Customers don't intend to recompile their C business applications.

When the native business application is run inside a legacy application servers such as


                   the business application can be exposed as Web service using its data structure as interface. This structure is used as input to a tool for creating WSDL and Web services bind file. The Web service bind file holds the data binding mechanisms using which the modern programs like Java can create byte buffers to communicate with C applications. These bind files are generated using tools like CICS Web service assistant tools or Rational Application Developers' J2C binding wizards.

Currently these tools have certain limitations as follows.

Some tools supports only limited number of bytes (for example 8 bytes) in data structure alignments. If the customer has C business applications running with 4 byte alignment, it can be exposed as Web service only if the C business application is re-compiled with 8 byte alignment options.

Some tools have limited operating system support and these tools support the alignments supported by the operating system through its wizards.

Creating data binding rules for supporting all the alignment options for all platforms is complex. It becomes more complex if the latest C compilers support any new alignment options, the data binding mechanism needs to be updated appropriately.

This invention is creating a data binding mechanism for native business applications, running in legacy application servers like TXSeries, to be exposed as Web services. The core idea is to create a C library for the target C business application data structure interface with the compiler alignment options used for the original business application. The library provides two interfaces.
1) It returns data byte buffer for corresponding data structure object. 2) Returns data structure object for corresponding data byte buffers. These interfaces can be used by Web services server implemented in Java using JNI technology.



TXSeries for Multi-



Page 02 of 5

Existing solutions provide limited platform support with limited compiler alignment options. Using this new mechanism, the platform specific implementations can be avoided.

The solution for creating data binding mechanisms for all the alignment op...