Windows Communications Foundation ("Indigo"): Web Services Interoperability With Java/J2EE Kirill...
-
Upload
edwin-powers -
Category
Documents
-
view
214 -
download
2
Transcript of Windows Communications Foundation ("Indigo"): Web Services Interoperability With Java/J2EE Kirill...
Windows Communications Windows Communications Foundation ("Indigo"): Web Services Foundation ("Indigo"): Web Services Interoperability With Java/J2EEInteroperability With Java/J2EE
Kirill GavrylyukKirill GavrylyukSimon GuestSimon GuestCOM423COM423Microsoft CorporationMicrosoft Corporation
AgendaAgenda
What is Interoperability?What is Interoperability?
Web Services ScenariosWeb Services Scenarios
Sending Binary Data using Web Sending Binary Data using Web ServicesServices
Security, Reliability and TransactionsSecurity, Reliability and Transactions
Web Services AdoptionWeb Services Adoption
Feeling Bad?Feeling Bad?Interoperability of Medical Records Interoperability of Medical Records (EMR)(EMR)
Pointer to EMRPointer to EMR
Request for EMRRequest for EMR PatientPatientRecordRecord
RepositoryRepository
Dr. WCF’s OfficeDr. WCF’s Office Patient Records Patient Records LocatorLocator
Data InteroperabilityData Interoperability
Feeling Bad?Feeling Bad?Interoperability of Medical Records Interoperability of Medical Records (EMR)(EMR)
Request for X-Ray
Request for X-Ray
X-Ray Image
X-Ray Image
PatientPatientRecordRecord
RepositoryRepository
Patient Records Patient Records LocatorLocator
Dr. Java’s OfficeDr. Java’s Office
Pointer to EMRPointer to EMR
Request for EMRRequest for EMR
Dr. WCF’s OfficeDr. WCF’s Office
Binary Attachments and Binary Attachments and Web ServicesWeb Services
xs:base64Binaryxs:base64BinaryInteroperable, but high processing costInteroperable, but high processing cost
30% extra message size30% extra message size
SwA (SOAP with Attachments)SwA (SOAP with Attachments)Low interoperability, attachments outside SOAP Low interoperability, attachments outside SOAP BodyBody
Lack of Composition with other Web Services Lack of Composition with other Web Services ProtocolsProtocols
DIME (Direct Internet Message DIME (Direct Internet Message Encapsulation)Encapsulation)
Low interoperability, attachments outside SOAP Low interoperability, attachments outside SOAP BodyBody
Lack of Composition with other Web Services Lack of Composition with other Web Services ProtocolsProtocols
SOAP Envelope
SOAPtext/xml
BodyBody
MTOM To The RescueMTOM To The Rescue(Message Transmission Optimization (Message Transmission Optimization Mechanism)Mechanism)
MIMEMIME
MIMEMIME
MIMEMIME
Binary 1
Binary 2
MIMEMIME
Binary 1as
base64
Binary 2as base64
Sign/EncryptSign/Encrypt
Scenario OverviewScenario Overview
Request for X-Ray
Request for X-Ray
X-Ray Image
X-Ray Image
PatientPatientRecordRecord
RepositoryRepository
Patient Records Patient Records LocatorLocator
Dr. Java’s OfficeDr. Java’s Office
Pointer to EMRPointer to EMR
Request for EMRRequest for EMR
Dr. WCF’s OfficeDr. WCF’s OfficeWCFWCF
BEA WebLogicBEA WebLogic8.1.48.1.4
Apache Axis 2.0Apache Axis 2.0
Secure MTOM Secure MTOM InteroperabilityInteroperability
MTOM SummaryMTOM SummaryMTOM Adoption
Apache Axis 2.0Apache Axis 2.0
gSoapgSoap
Microsoft WSE3.0 Microsoft WSE3.0 B1B1
Microsoft WCF B1Microsoft WCF B1
Sun, JWSDP2.0Sun, JWSDP2.0
WhiteMesaWhiteMesa
BEABEA
IBMIBM
Released productReleased product Public interopPublic interopAA Co-Author OnlyCo-Author Only
Efficient as SwA & DIMEEfficient as SwA & DIME
Composes well with WS-* Composes well with WS-* as base64Binaryas base64Binary
Just an encoding: no Just an encoding: no impact on programming impact on programming modelmodel
Interoperable, adoption is Interoperable, adoption is underwayunderway
I’m Sorry. It doesn’t look I’m Sorry. It doesn’t look good…good…
WS-ReliableMessagingWS-ReliableMessaging
““How Do We Make Web Services Reliable?”How Do We Make Web Services Reliable?”Core RequirementsCore Requirements
Reliable transfer of messages end-to-endReliable transfer of messages end-to-endAssurances: At least once, At most once, Assurances: At least once, At most once, OrderedOrdered
ComposableComposableSecure, transport-independentSecure, transport-independent
Health Care and MonitoringHealth Care and MonitoringScan information needs to be sent in order Scan information needs to be sent in order Data Loss is unacceptableData Loss is unacceptable
CreateSequenceResponse (ID=AAA)
Sequence (ID=AAA, Sequence (ID=AAA, #2)#2)
Sequence (ID=AAA, #1)Sequence (ID=AAA, #1)
Sequence (ID=AAA, #3, Last)Sequence (ID=AAA, #3, Last)
SequenceAck (ID=AAA, Ranges[1-1])
TerminateSequence(ID=AAA)TerminateSequence(ID=AAA)
Sequence (ID=AAA, #2)Sequence (ID=AAA, #2)
SequenceAck (ID=AAA, Ranges[1-3])
CreateSequenceCreateSequence
NellcorNellcorServiceService
WS-ReliableMessagingWS-ReliableMessaging
SequenceAck (ID=AAA, Ranges[1,2])Dr. Java’sDr. Java’sMonitoringMonitoring
ServiceService
Scenario OverviewScenario Overview
Dr. Java’sDr. Java’sMonitoringMonitoring
ServiceService
Send MeasurementsSend Measurementsusing Secure RMusing Secure RM
Activate Nellcor DeviceActivate Nellcor Device
Dr. WCF’s OfficeDr. WCF’s OfficeWCFWCF
Apache Axis 1.3Apache Axis 1.3
NellcorNellcorServiceService
Secure RM InteroperabilitySecure RM Interoperability
WS-ReliableMessaging – WS-ReliableMessaging – SummarySummary
WS-RM Adoption
Microsoft WCF B1Microsoft WCF B1
IBM, ETTK – IBM, ETTK – AlphaworksAlphaworks
BEA, WebLogic 9.0BEA, WebLogic 9.0
Cape ClearCape Clear
SystinetSystinet
Blue TitanBlue Titan
Apache Axis 1.3 Apache Axis 1.3 SandeshaSandesha
SonicSonic
TibcoTibco
Reliable, in-order Reliable, in-order message transfer message transfer independent of the independent of the transporttransport
Composes well with Composes well with WS-*: security, WS-*: security, transactionstransactions
No impact on No impact on programming modelprogramming model
Interoperable, adoption Interoperable, adoption is underwayis underway
The DiagnosisThe Diagnosis
WS-* Perl Example: Secure WS-* Perl Example: Secure RMRM
PERL SoapLite modulePERL SoapLite module
Adding Two headersAdding Two headersSequence headerSequence header
Security + UsernameToken headerSecurity + UsernameToken header
Adding a contract with four messagesAdding a contract with four messagesCreateSequenceCreateSequence
CreateSequenceResponseCreateSequenceResponse
SequenceAcknowledgementSequenceAcknowledgement
TerminateSequenceTerminateSequence
Re-transmissionRe-transmission
WS-* for Perl WS-* for Perl InteroperabilityInteroperability
More ResourcesMore Resources
Microsoft Corporation
Intel Corporation
Sun Microsystems, Inc.
Dell Inc.
AMD Inc. A
Computer Associates International, Inc.
A
Sonic Software A
gSOAP
Systinet Corporation A
WEBM Solutions, Inc.
NetIQ Corp.
WS-P
olicy
Web Services Industry Adoption
Messaging Security Assurances
Devices
Management
Metadata
WS-X
Fer
Enum
Device
s
Profi
le
WS-S
ec. C
onv.
WS-S
ecurit
y
WS-T
rust
WS-R
M
WS-A
T
MEX
WS-D
iscov
ery
WS-M
anag
emen
t
Released product
Public interop
A Co-Author only
SOAP / W
SDL
Microsoft Corporation
IBM
BEA Systems, Inc. A
Cape Clear
Systinet Corporation
Blue Titan Software, Inc
Sonic Software
IONA Technologies
Arjuna Technologies
Choreology Ltd
Apache
Microsoft Corporation
IBM
BEA Systems, Inc. A
RSA Security Inc.
Systinet Corporation
Apache
Layer7 Technologies A
DataPower, Inc.
Computer Associates International, Inc.
A A
Sun Microsystems, Inc.
SAP AG
Tibco Software, Inc.
IONA Technologies
WebMethods, Inc.
Nokia
Cape Clear
gSOAP
Netegrity A A
Verisign, Inc. A A
Oblix Inc. (Oracle)
Microsoft Corporation
IBM A
BEA Systems, Inc. A
Sun Microsystems, Inc.
Amazon.com
eBay, Inc
Apache
White Mesa Software
gSOAP
Ricoh
Epson Corporation
HP
Xerox
Intel Corporation
Canon Inc.
Microsoft Corporation
Intel Corporation
Canon Inc.
Ricoh Co.
Epson Corp.
HP
Xerox
gSOAP
Lexmark International, Inc.
A
Microsoft Corporation
IBM A
BEA Systems, Inc. A
SAP AG A
Sun Microsystems, Inc. A
Verisign Inc. A
Sonic Software A
Computer Associates International, Inc.
A
WebMethods, Inc. A
gSOAP
MTOM
© 2005 Microsoft Corporation. All rights reserved. The information contained in this document represents the current view at the time of publication and is subject to change.
Web Services Protocol Web Services Protocol SpecificationsSpecifications
Community Resources – At PDCCommunity Resources – At PDCTalksTalks
COM432: Developing Web Services Using ASP.NET and COM432: Developing Web Services Using ASP.NET and WSE that Interoperate with the Windows WSE that Interoperate with the Windows Communications Foundation ("Indigo") (Fri, 8:30am)Communications Foundation ("Indigo") (Fri, 8:30am)
COM326: Web Services for XML Programmers (Thu, COM326: Web Services for XML Programmers (Thu, 5:15pm)5:15pm)
COM415: A Deep Dive into Best Practices Using the COM415: A Deep Dive into Best Practices Using the Windows Communications Foundation (Thu, 10am)Windows Communications Foundation (Thu, 10am)
Labs: Labs: COMHOL300, COMHOL301COMHOL300, COMHOL301
Product PavilionProduct PavilionWS-* Adoption SlideWS-* Adoption Slide
Ask The Experts table: Ask The Experts table: WCF Interoperability – tonight at 6pm – 9pmWCF Interoperability – tonight at 6pm – 9pm
COM Track lounge: COM Track lounge: We’ll be there Thu 3:30-7pm, Fri 8:30 – 4pmWe’ll be there Thu 3:30-7pm, Fri 8:30 – 4pm
Community Resources – After Community Resources – After PDCPDC
If you missed this session, watch it on the DVDIf you missed this session, watch it on the DVDCOM423 – WCF: Web Services InteroperabilityCOM423 – WCF: Web Services Interoperability
Microsoft Interop Portal: Microsoft Interop Portal: http://www.microsoft.com/interop http://www.microsoft.com/interop
MSDN Web Services Interoperability Home PageMSDN Web Services Interoperability Home Pagehttp://msdn.microsoft.com/webservices/building/interophttp://msdn.microsoft.com/webservices/building/interop
MSDN .Net/Java Interoperability Home PageMSDN .Net/Java Interoperability Home Pagehttp://msdn.microsoft.com/vstudio/java/interophttp://msdn.microsoft.com/vstudio/java/interop
Microsoft Public Web Services Interop TestsMicrosoft Public Web Services Interop Testshttp://mssoapinterop.org/ws/http://mssoapinterop.org/ws/
Windows Communication Foundation (a.k.a. Windows Communication Foundation (a.k.a. Indigo)Indigo)
http://msdn.microsoft.com/webservices/indigo/ http://msdn.microsoft.com/webservices/indigo/
Web Services Interoperability BlogsWeb Services Interoperability Blogshttp://www.simonguest.comhttp://www.simonguest.com
http://pluralsight.com/blogs/kirillg/http://pluralsight.com/blogs/kirillg/ http://blogs.cocoondev.org/dims/index.rdf http://blogs.cocoondev.org/dims/index.rdf
Your FeedbackYour Feedbackis Important!is Important!
Please Fill Out a SurveyPlease Fill Out a Survey
© 2005 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.