How is Integration between Java and .NET Achieved

Java J2EE applications and .NET applications are equally competitive. Most of the applications currently existing use one of these two technologies. There are situations where your application has to communicate with other applications for achieving a particular functionality.

For example, when you are booking tickets online, the ticket reservation application has to communicate with the payment gateway which in turn communicates with the bank’s online application for fund transfer. What if your application is developed using .NET and the application you want to connect is developed using Java? How do you achieve interoperability between these two applications and perform the integration? This article will give you an overview on what all different ways are there to perform such integration.

SOA Web Services:

SOA stands for Service Oriented Architecture. Using SOA you can integrate Java and .NET application by following the steps given below:

• Ensure that both Java and .NET applications are WS-I complaint. Only then web services can be created
• Develop a .NET Web Service for .NET application
• Deploy the .NET Web Service on .NET Server
• Develop a Java Web Service for the Java Application
• Deploy the Java Web Service in any suitable servers like tomcat, Websphere Application Server (WAS), Weblogic Server…
• Code an intermediate C# application which calls both the services and does the required process based on the results fetched from the web service calls.

For implementing SOA Web Services you should have better understanding on relevant protocols like SOAP, XSD.


Bridging is yet another alternative for integrating java and .net applications. Assume that your .NET application has to interact with an Enterprise Java Bean (EJB) of a J2EE Application. In that case, you can use bridging. Here is the set of steps involved in bridging:

• Create a client application that will interact with the EJB
• This client application is accessed via Proxy. This proxy is built using bridging
• Objects fetched via proxy are serialized into binary streams
• Binary streams are transferred to the .NET Application using .NET Remoting
• This receiving platform de-serializes the binary streams and gets the objects in a format recognized by your .NET application.

Many third-party vendors provide tools to perform integration using bridging. One such most commonly used tool is Ja.NET which belongs to Intrinsync Solution’s. When you are using bridging, you need not have to concentrate on the protocols. Tool that provides bridging will do all that you want. You have to concentrate on the normal coding for creating the client application.


This is an interesting option used by Banks and other financial concerns to establish communication between two systems implemented using different technologies. For example BANK A has to send secured data to BANK B wherein BANK A’s application is built using Java and BANK B’s application is built using .NET. BANK A will convert its data into messages and send it to BANK B using message providers like MQ Series of IBM. Both BANK A and BANK B will have MQ (Message Queue) associated with it. BANK A will put the message in its MQ. Message provider will pick message from BANK A’s MQ and drop it into BANK B’s MQ. BANK B will fetch the message and interpret it.

Middleware Technology:

Many third party vendors are providing middleware technologies to take care of Java and .NET integration. Few such tools are J-Integra and JNBridgePro.

| All about Conceptual Analysis on .NET Remoting | Building desktop applications in .Net | Building Distributed Applications Efficiently Using .Net Remoting | C# (C Sharp) Unified Type System: Reference Types | C# (C Sharp) Unified Type System: Value Types | Data access in .Net | Delegates Vs Interfaces in C# (C Sharp) | How is Integration between Java and .NET Achieved | How is Versioning Achieved in C# (C Sharp) | Implementing Authorization and authentication in | Implementing design patterns in .Net | List of Query Keywords in C# (C Sharp) |

“Amazon and the Amazon logo are trademarks of, Inc. or its affiliates.”

| Privacy Policy for | Disclosure | Contact |

Copyright - © 2004 - 2023 - All Rights Reserved.