1 / 22

.NET and J2EE INTEROPERABILLITY

.NET and J2EE INTEROPERABILLITY. By: PHANIDEEP NARRA. OVERVIEW. Definition Motivation .NET and J2EE Architectures Interoperability Problems Interoperability Technologies Conclusion and future works Questions. DEFINITION. What is interoperability?

tanguay
Download Presentation

.NET and J2EE INTEROPERABILLITY

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. .NET and J2EE INTEROPERABILLITY By: PHANIDEEP NARRA

  2. OVERVIEW • Definition • Motivation • .NET and J2EE Architectures • Interoperability Problems • Interoperability Technologies • Conclusion and future works • Questions

  3. DEFINITION • What is interoperability? “ Ability of two or more systems to communicate, transfer data among various functional units and use the transferred data”

  4. MOTIVATION • Achieving reuse of existing systems - usually highest on the list of considerations • Implementing Proof of concept studies - for a new interface with existing environment • Migration to microsoft.net - to migrate from J2EE to .NET • Achieving lower project costs - .NET has the potential to deliver lower project costs

  5. Basics of .NET for J2EE Developers • Microsoft .NET is a designation that reflects Microsoft’s realignment towards Internet operation and distributed applications. • Microsoft .NET consists of three main components: • .NET Framework • Visual Studio.NET • Windows Server System

  6. Basics of J2EE for .NET Developers • Sun Microsystems developed Java as both a platform and a programming language. • There are currently three editions of the Java platform: • J2SE • J2EE • J2ME

  7. Major Differences • Three Major differences • Operating System Support - J2EE supports many OS, whereas .NET does not. • Language support – .NET supports many languages, whereas J2EE does not. • Execution Method - .NET produces MSIL, whereas JAVA produces BYTECODE.

  8. .NET ARCHITECTURE

  9. J2EE ARCHITECTURE

  10. INTEROPERABILITY PROBLEMS • When implementing a .NET and J2EE interoperability project, you confront three main data exchange challenges • The Three challenges are: • Primitive Data type Mappings - System.String in .NET and java.lang.string in JAVA are not the same. • Non-Existent Data types – data types which exist in one that do not exist in the other. • Complex Data types – Ex: nested primitive datatypes.

  11. INTEROPERABILITY PROBLEMS • There are few solutions to type compatibility • Using Serialization: Two Types of serialization • Binary Serialization: Converts data type to binary stream • XML Serialization: Converts data type to XML stream which is then converted to XML document. • De-Serialization can be done at the other end to get a type compatible data type for that environment. • Using XML Schemas is a more reliable solution.

  12. INTEROPERABILITY PROBLEMS • When you use XML serialization you generate an XML document. • Ensure that this document generated at one platform is compatible with the other platform. • The XML Schema Solution Provides the interoperability contract that specifies the format for XML documents • XML Schema provides the template for successfully linking .NET and JAVA

  13. INTEROPERABILITY PROBLEMS • Data Exchange recommendations are provided for different interoperability scenarios. • There are three interoperability scenarios • Linking two or more new applications • Linking a new application to an existing application • Linking two existing applications

  14. INTEROPERABILITY PROBLEMS Recommendations for linking new applications • Use XSD to define common or shared types and then generate platform-specific code from those shared types. • Create a central XSD repository for your development teams to provide for consistency in generating types across applications. • Avoid exposing elements that XSD does not define — always use types that are published in XSD. • Test data types with test utilities before writing your application.

  15. INTEROPERABILITY PROBLEMS Recommendations for linking new with existing apps. • Generate XSDs from the data types that the existing application exposes. • Use these XSDs to generate corresponding data type classes in the new application’s platform. • Follow the recommendations from the first scenario.

  16. INTEROPERABILITY PROBLEMS Recommendations for linking two existing apps. • Solution is to use a common format and a single adapter: 1. Select one application’s data type as a common format for exchanging data. 2. Implement an adapter layer on the other application to convert its data type to the common format.

  17. INTEROPERABILITY TECHNOLOGIES • There are several technologies used for J2EE and .NET interoperability. • Two most common technologies used are: • .NET Remoting • XML Web Services

  18. INTEROPERABILITY TECHNOLOGIES • .NET Remoting: • Has the advantage of greater performance and easy implementation in .NET framework • However, JAVA Applications cannot directly connect using .NET remoting. • They require runtime bridges: Ja.NET and JNBridgePro.

  19. INTEROPERABILITY TECHNOLOGIES • A simple .NET remoting implementation consists of the following items: • A remotable application object or server component. • A host application that listens for client requests to the remotable application component. • A client application component that makes requests to the remotable application component.

  20. INTEROPERABILITY TECHNOLOGIES Implementing .NET Remoting involves the following phases: ● Determining the host application or environment. ● Creating the server component. ● Creating the client. ● Editing the configuration files.

  21. CONCLUSION & FUTURE WORK • There are many other technologies which can be used for J2EE and .NET interoperability. • CORBA and Web Services are major among them. • .NET is a product and J2EE is a standard • If you use web services, .NET is nice but JAVA is scalable.

  22. THANK YOU

More Related