net and j2ee interoperabillity n.
Skip this Video
Loading SlideShow in 5 Seconds..
.NET and J2EE INTEROPERABILLITY PowerPoint Presentation
Download Presentation


5 Views Download Presentation
Download Presentation


- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript


  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 - 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.



  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.