Download presentation
Presentation is loading. Please wait.
Published byHelena Sharp Modified over 9 years ago
1
WEB402 Cross-Platform Interoperability Yasser Shohoud Program Manager XML Messaging Team Microsoft Corporation
2
If I had a $... Which of my systems are interoperable? What can.NET interoperate with today? What are the challenges and the pitfalls? How do I connect my ‘boxes’ together? Interoperability is Web services, right? I’ve heard Web services are slow / insecure But, how do I ensure that I don’t take a proprietary route? Oh, did I forget to mention? We’re a J2EE shop… Oh, did I forget to mention? We’re a MQ Series shop… Oh, did I forget to mention? We’re a IBM/VMS/SunOS* shop… * Replace as applicable
3
Cross-Platform Interop Agenda Interoperability Fundamentals Dealing with Complex Data Types WSDL Interop Problems What is WS-I and how can it help you achieve interop Conclusion, More Info and Q&A
4
Cross-Platform Interop Agenda Interoperability Fundamentals Dealing with Complex Data Types WSDL Interop Problems What is WS-I and how can it help you achieve interop Conclusion, More Info and Q&A
5
Interoperability Formal Definition The capability to communicate, execute programs, or transfer data among various functional units in a manner that requires the user to have little or no knowledge of the unique characteristics of those units. [ISO/IEC 2382 Information Technology Vocabulary]
6
Interoperability Formal Definition The capability to communicate, execute programs, or transfer data among various functional units in a manner that requires the user to have little or no knowledge of the unique characteristics of those units. [ISO/IEC 2382 Information Technology Vocabulary]
7
Interoperability Interoperability Enables Re-use of Existing Systems Integration of legacy systems Extends life of current systems and knowledge Proof of Concepts Rip and replace is no longer an option Increases technical agility Migration Migration is not an ‘overnight’ process Allows for planned, correctly executed migrations Potentially Lower Project Costs Development time and resource cost savings Faster Go-to-Market (GTM)
8
J2EE.NET ASP.NET Interoperability Requirements Presentation Tier Resource Tier Business Tier Client Serviced Components Database Message Queue Broker Technology Aligned Development JSPs Servlets EJBs
9
ASP.NET Interoperability Requirements Presentation Tier Resource Tier Business Tier Client Serviced Components Database Message Queue Broker Scenario 1: Interoperability at the Presentation Tier JSPs Servlets EJBs
10
ASP.NET Interoperability Requirements Presentation Tier Resource Tier Business Tier Client Serviced Components Database Message Queue Broker Scenario 1: Interoperability at the Presentation Tier JSPs Servlets EJBs
11
ASP.NET Interoperability Requirements Presentation Tier Resource Tier Business Tier Client Serviced Components Database Message Queue Broker Scenario 2: Re-use of Business Tier Components JSPs Servlets EJBs
12
ASP.NET Interoperability Requirements Presentation Tier Resource Tier Business Tier Client Serviced Components Database Message Queue Broker Scenario 2: Re-use of Business Tier Components JSPs Servlets EJBs
13
ASP.NET Interoperability Requirements Presentation Tier Resource Tier Business Tier Client Serviced Components Database Message Queue Broker Scenario 3: Re-use of Shared Resources JSPs Servlets EJBs
14
Demo.NET GLUE interop
15
Cross-Platform Interop Agenda Interoperability Fundamentals Dealing with Complex Data Types WSDL Interop Problems What is WS-I and how can it help you achieve interop Conclusion, More Info and Q&A
16
JSPs Servlets EJBs ASP.NET Complex Data Types Presentation Tier Resource Tier Business Tier Client Serviced Components Database Message Queue Broker Beyond the ‘Hello World’ Example Full NameJohn Doe Company NameMicrosoft Address(1 Main St., Seattle. WA.) Work Tel425 703 5839 Cell Tel425 395 4082 Emailjohndoe@microsoft.com Last Updated4 Jan 2003, 11:23.37am
17
.NET and J2EE Data Types Basic data types do not necessarily match java.lang.String == System.String? Data types in one do not exist in the other System.Data.DataSet java.sql.ResultSet Two ways of converting the Data Binary Serialization XML (Parsing or Serialization with XML Schema) Complex Data Types Beyond the ‘Hello World’ Example
18
Complex Data Types Binary Serialization Mechanism where Complex Data Types are converted to a stream of bytes De-serialization must occur to same type Serialization relies on Formatters Both parties must agree on the formatter.NET Fx 1.0 and J2SE 1.4 binary formatters are incompatible.NET Fx 1.0 binary formatter can be licensed
19
Complex Data Types XML Schema Defines a structure and common datatypes of an XML Document Stored in an XSD, which can be remote and shared Provides arbitration for type mapping java.lang.String == xs:string == System.String Cross-type possible, providing XML document is still valid
20
JSPs Servlets EJBs ASP.NET Complex Data Types Presentation Tier Resource Tier Business Tier Client Serviced Components Database Message Queue Broker Beyond the ‘Hello World’ Example XSD XML
21
Complex Data Types Any Data Type, 100% Guaranteed ? Some types are just difficult to send Hashed types cannot be serialized.NET Datasets are dynamic #1 Challenge in Achieving Interoperability Interoperability Recommendation: Create Unit Tests Model the data in UML Create repeatable test harnesses Then code the application (Also useful for performance testing)
22
Cross-Platform Interop Agenda Interoperability Fundamentals Dealing with Complex Data Types WSDL Interop Problems What is WS-I and how can it help you achieve interop Conclusion, More Info and Q&A
23
What is WSDL Web Services Description Language An XML grammar for describing Web services interfaces Uses XML Schema to describe the basic types used by a Web service E.g. Order, Person, Customer Adds messages, operations, portTypes, bindings, ports and services
24
WSDL Terminology
25
WSDL Example Example …
26
Why Are There WSDL Interop Issues? WSDL and Schema are flexible Multiple ways to do the same thing Imports are problematic WSDL imports are not well specified Schema imports are also allowed (two ways to do imports) It is just too complex Very easy to get something wrong
27
WSDL Interop Issue Real-world issue Recently has been a frequent issue Core problems Uses inline schema types with SOAP encoding Also uses group references There is a workaround Let’s see it …
28
Cross-Platform Interop Agenda Interoperability Fundamentals Dealing with Complex Data Types WSDL Interop Problems What is WS-I and how can it help you achieve interop Conclusion, More Info and Q&A
29
Web Services- Interoperability Organization Industry initiative for Web services Open to any organization committed to Web services Promote and accelerate adoption, deployment Focused on promoting Web service interoperability Across platforms, applications, and programming languages Promote a common, clear definition for Web services What Is WS-I?
30
WS-I Deliverables Profiles Named groups of specifications at given version levels with conventions about how they work together Sample applications Multiple implementations Demonstrate conformance and interoperability Test suites and supporting materials Conformance testing tools Supporting documentation and white papers
31
Interop Demo: WS-I Sample Application demo demo
32
Basic Profile 1.0 Profiles XML, XML Schema, SOAP, WSDL and UDDI Provides an interoperable subset Focus is mostly on SOAP and WSDL Defines optional mechanisms to advertise conformance In WSDL and in SOAP message
33
WS-I Test Tools Test artifacts for conformance SOAP messages, WSDL documents, UDDI registrations Two components Monitor and analyzer Monitor Man-in-the-middle approach to intercepting messages Analyzer Reads monitor log and analyzes conformance
34
WS-I Test Tools Architecture ClientserviceMonitor Log file Analyzer AnalyzerReport
35
WS-I Test Tools demo demo
36
Conclusion Interop is needed at several layers You can improve interop at the app layer by choosing the right data types We’re always working with other vendors to improve interop There are typically workarounds to these interop issues E.g. the WSDL issues You can use WS-I test tools to test your service for BP conformance Increase your chances of interop
37
Resources http://msdn.microsoft.com/webservices Newsgroup microsoft.public.dotnet.framework.webservices WS-I.org Real World XML Web Services Addison Wesley, 2002
38
Ask The Experts Get Your Questions Answered Web Services Booth ATE booth 19/20 Tuesday 5pm – 6pm Wednesday 11am – 12 noon
39
Community Resources http://www.microsoft.com/communities/default.mspx Most Valuable Professional (MVP) http://www.mvp.support.microsoft.com/ Newsgroups Converse online with Microsoft Newsgroups, including Worldwide http://www.microsoft.com/communities/newsgroups/default.mspx User Groups Meet and learn with your peers http://www.microsoft.com/communities/usergroups/default.mspx
40
evaluations evaluations
41
© 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.