JMS Proxy and C/C++ Client SDK ("JMS" signifies "Java messaging service" and "SDK" signifies "software development kit") is a software package for developing interfaces that enable legacy programs (here denoted "clients") written in the C and C++ languages to communicate with each other via a JMS broker. This package consists of two main components: the JMS proxy server component and the client C library SDK component. The JMS proxy server component implements a native Java process that receives and responds to requests from clients. This component can run on any computer that supports Java and a JMS client. The client C library SDK component is used to develop a JMS client program running in each affected C or C++ environment, without need for running a Java virtual machine in the affected computer. A C client program developed by use of this SDK has most of the quality-of-service characteristics of standard Java-based client programs, including the following:

  • Durable subscriptions;
  • Asynchronous message receipt;
  • Such standard JMS message qualities as "TimeToLive," "Message Properties," and "DeliveryMode" (as the quoted terms are defined in previously published JMS documentation); and
  • Automatic reconnection of a JMS proxy to a restarted JMS broker

This program was written by Paul Wolgast and Paul Pechkam of Caltech for NASA's Jet Propulsion Laboratory. For further information, access the Technical Support Package (TSP) free on-line at under the Software category.

This software is available for commercial licensing. Please contact Karina Edmonds of the California Institute of Technology at (626) 395-2322. Refer to NPO-42527.

This Brief includes a Technical Support Package (TSP).
Document cover
JMS Proxy and C/C++ Client SDK

(reference NPO-42527) is currently available for download from the TSP library.

Don't have an account? Sign up here.