Transcript narra

By:
PHANIDEEP NARRA
OVERVIEW
 Definition
 Motivation
 .NET and J2EE Architectures
 Interoperability Problems
 Interoperability Technologies
 Conclusion and future works
 Questions
DEFINITION
 What is interoperability?
“ Ability of two or more systems to communicate,
transfer data among various functional units and use
the transferred data”
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
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
2. Visual Studio.NET
3. Windows Server System
1.
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
2. J2EE
3. J2ME
1.
Major Differences
 Three Major differences
Operating System Support - J2EE supports many
OS, whereas .NET does not.
2. Language support – .NET supports many languages,
whereas J2EE does not.
3. Execution Method - .NET produces MSIL, whereas
JAVA produces BYTECODE.
1.
.NET ARCHITECTURE
J2EE ARCHITECTURE
INTEROPERABILITY PROBLEMS
 When implementing a .NET and J2EE interoperability
project, you confront three main data exchange
challenges
 The Three challenges are:
1. Primitive Data type Mappings - System.String in
.NET and java.lang.string in JAVA are not the same.
2. Non-Existent Data types – data types which exist in
one that do not exist in the other.
3. Complex Data types – Ex: nested primitive datatypes.
INTEROPERABILITY PROBLEMS
 There are few solutions to type compatibility
 Using Serialization: Two Types of serialization
Binary Serialization: Converts data type to binary
stream
2. 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.
1.
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
INTEROPERABILITY PROBLEMS
 Data Exchange recommendations are provided for
different interoperability scenarios.
 There are three interoperability scenarios
Linking two or more new applications
2. Linking a new application to an existing application
3. Linking two existing applications
1.
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.
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.
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.
INTEROPERABILITY TECHNOLOGIES
 There are several technologies used for J2EE and .NET
interoperability.
 Two most common technologies used are:
.NET Remoting
2. XML Web Services
1.
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.
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.
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.
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.
THANK YOU