I trust by "real-time" you are not referring to "hard" real-time systems. Hard real-time systems cannot tolerate the latencies inherent in most middleware systems. I assume you are referring to "live" integration with running applications.
Conceptually, the SCA component model provides an abstraction layer between service components and the protocols they use to communicate. Conceivably, an SCA component could interact with a legacy application using the legacy application's native protocol (assuming the SCA container provides a binding for the legacy protocol). But the reality is still a little short of the concept. Few SCA implementations exist, and the ones that do typically support a very limited set of protocol bindings (e.g., SOAP, RMI, and JMS; one implementation supports Jini).
The usual approach taken to enable "live" integration with legacy applications is to build a proxy service that encapsulates the legacy application. The proxy service exposes the capabilities of the legacy application through a standards-based interface, and its implementation uses whatever means available to communicate with the legacy application. If the legacy application exposes an API (e.g., programmable Java or .NET API, MQ API, JCA, or a proprietary API), you can wrap the API using your favorite service framework. If the legacy application only enables communications via an online user interface (e.g., 3270, HLLAPI, VT220, etc) you can use a screen scraping technology to create the proxy service. Many ESB vendors provide adapter frameworks that make it fairly trivial to create proxy services.
The proxy service can be configured as an SCA component, and therefore can be assembled into an SCA composite just like any other service.
Dig Deeper on Topics Archive
Related Q&A from Anne Thomas Manes
Anne Thomas Manes explains the differences between open source clients and open source implementations. Continue Reading
Anne Thomas Manes discusses the best way to go about creating an enterprise data dictionary and why the systems works well. Continue Reading
Anne Thomas Manes explains the difference between 'hard' real time and 'live' real time systems. Continue Reading