View
217
Download
0
Tags:
Embed Size (px)
Citation preview
Web ServicesWeb Services(ASMX 2.0 and WSE 3.0)(ASMX 2.0 and WSE 3.0)
Mike TaultyMike TaultyDeveloper & Platform GroupDeveloper & Platform GroupMicrosoft LtdMicrosoft [email protected]@microsoft.comhttp://mtaulty.comhttp://mtaulty.com
Distributing CodeDistributing Code
CodeMoreCode
messagemessage
MessageMessageContractContract
Messaging with Web Messaging with Web ServicesServices
MoreCode
SOAPSOAP
XMLXML
ProtocolProtocol HTTPHTTP
Code
SOAPSOAP
XMLXML
WSDLWSDLContractContract
XSDXSD
TypesTypes
Messaging with Web Messaging with Web ServicesServices
MoreCode
ProtocolProtocol HTTPHTTP
Code
RepresentationRepresentation XMLXML
PackagingPackaging SOAPSOAP
DescriptionDescription WSDL + XSDWSDL + XSD
ASP.NET Web ServicesASP.NET Web Services
Declarative model – driven by .NET Declarative model – driven by .NET attributesattributes
.NET class methods exposed as web .NET class methods exposed as web servicesservices
Key attributes Key attributes WebMethod, WebServiceWebMethod, WebService
Developer writes a .ASMX text file for a service Developer writes a .ASMX text file for a service which points to the class providing which points to the class providing implementationimplementation
Xml SerializationXml SerializationXML->Parameters->Return Values->XMLXML->Parameters->Return Values->XML
SOAP, WSDL automatically producedSOAP, WSDL automatically produced
Tools for generating web service proxy Tools for generating web service proxy classesclasses
ASMX Version 2.0ASMX Version 2.0
Evolutionary enhancements to the Evolutionary enhancements to the existing V1.1 versionexisting V1.1 version
Interface based developmentInterface based development
WS-I Basic Profile complianceWS-I Basic Profile compliance
SOAP 1.2 supportSOAP 1.2 support
XML Serialization improvementsXML Serialization improvementsGenericsGenerics
Custom serializationCustom serialization
Connected Applications
Messaging
XML
Transports
Secure Reliable Transacted
Meta
data
Management Business
Process
…
Beyond Simple Beyond Simple Messaging…Messaging…
Devices Mobile
P2P EAI B2B Grid
Connected Applications
Messaging
XML
Transports
Secure Reliable Transacted
Meta
data
Management Business
Process
…
How does ASP.NET Stack How does ASP.NET Stack Up?Up?
Devices Mobile
P2P EAI B2B GridASP.NETASP.NET
Web Services Web Services EnhancementsEnhancements
Addition to VS.NET 2003 and .NET Addition to VS.NET 2003 and .NET Framework V1.1Framework V1.1
Provides new messaging Provides new messaging functionality;functionality;
Addressing, Security, PolicyAddressing, Security, Policy
Plugs into ASMX HTTP web servicesPlugs into ASMX HTTP web services
Obtaining…Obtaining…Download V2.0 Sp 3 from MSDNDownload V2.0 Sp 3 from MSDN
Support is as for .NET Framework 1.1Support is as for .NET Framework 1.1
WSE 3.0WSE 3.0
Addition to Visual Studio 2005 Addition to Visual Studio 2005 and .NET Framework V2.0and .NET Framework V2.0
Evolutionary enhancements to V2.0Evolutionary enhancements to V2.0ASMX programming model over TCPASMX programming model over TCP
Simplified security and policySimplified security and policy
MTOM support for optimising MTOM support for optimising transmission of binary datatransmission of binary data
Wire interoperability with “Indigo”Wire interoperability with “Indigo”
Preview version available (June)Preview version available (June)
Connected Applications
Messaging
XML
Transports
Secure Reliable Transacted
Meta
data
Management Business
Process
…
How does WSE 3.0 Stack How does WSE 3.0 Stack Up?Up?
Devices Mobile
P2P EAI B2B GridWSE 3.0WSE 3.0
Building services with ASMX Building services with ASMX 2.0 and WSE 3.02.0 and WSE 3.0
SummarySummary
What have we just seen?What have we just seen?ASMX V2.0ASMX V2.0
Interface based development in ASMX 2.0Interface based development in ASMX 2.0
Custom and generics serialization Custom and generics serialization
WS-I Basic Profile ComplianceWS-I Basic Profile Compliance
WSE V3.0WSE V3.0Transmission of binary data with MTOMTransmission of binary data with MTOM
Hosting of ASMX services over TCPHosting of ASMX services over TCP
Securing web services with WS-SecuritySecuring web services with WS-Security
ResourcesResources
Web Services UrlsWeb Services Urlshttp://msdn.microsoft.com/webserviceshttp://msdn.microsoft.com/webservices
http://msdn.microsoft.com/webservices/http://msdn.microsoft.com/webservices/understanding/default.aspxunderstanding/default.aspx
http://msdn.microsoft.com/Longhorn/http://msdn.microsoft.com/Longhorn/understanding/pillars/Indigo/default.aspxunderstanding/pillars/Indigo/default.aspx
http://www.microsoft.com/uk/msdn/http://www.microsoft.com/uk/msdn/events/nuggets.aspxevents/nuggets.aspx
© 2004 Microsoft Limited. All rights reserved.© 2004 Microsoft Limited. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summaryThis presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary..
A managed API for building and running A managed API for building and running service-oriented applicationsservice-oriented applications
Extends the .NET Framework 2.0Extends the .NET Framework 2.0
Ships in the “Longhorn timeframe” – 2006, Ships in the “Longhorn timeframe” – 2006, preview available today
Runs on Windows XP, Windows Server Runs on Windows XP, Windows Server 2003 and Windows “Longhorn”2003 and Windows “Longhorn”
““Indigo”Indigo”
WS-*WS-*ProtocolsProtocols
InteropInteropwith otherwith otherplatformsplatforms
Attribute-Attribute-BasedBased
ProgrammingProgramming
Message-Message-OrientedOriented
ProgrammingProgramming
ExtensibilityExtensibilityLocation Location
transparencytransparency
Unifying today’s many Unifying today’s many stacks…stacks…
Whilst interoperating…Whilst interoperating…
Transports HTTP Transports HTTP
XML XML, XSD, XPath XML XML, XSD, XPath
Messaging SOAP, WS-Addressing, WS-EventingMessaging SOAP, WS-Addressing, WS-Eventing
SecurityWS-Security
WS-TrustWS-Federation
SecurityWS-Security
WS-TrustWS-Federation
ReliabilityWS-ReliableMessaging
ReliabilityWS-ReliableMessaging
TransactionsWS-TransactionsWS-Coordination
TransactionsWS-TransactionsWS-Coordination
Met
adat
aW
SD
L,
WS
-Po
licy
, W
S-D
isco
very
Met
adat
aW
SD
L,
WS
-Po
licy
, W
S-D
isco
very
[ServiceContract(SecureChannel, SecurityMode =“Windows")][ServiceContract(SecureChannel, SecurityMode =“Windows")][Reliability(Guarantees.ExactlyOnce | Guarantees.InOrder)][Reliability(Guarantees.ExactlyOnce | Guarantees.InOrder)][ServiceContract][ServiceContract]class HelloService class HelloService { { [ServiceOperation(TransactionFlowAllowed = true)][ServiceOperation(TransactionFlowAllowed = true)] String Hello(String Greeting) String Hello(String Greeting) { { return Greeting; return Greeting; }}}}
1 line 1 line securitysecurity
1 line 1 line reliable reliable
messagingmessaging
1 line 1 line transactionstransactions
Total linesTotal lines 33
And being productive…And being productive…Secure, Reliable, Transacted Application Secure, Reliable, Transacted Application DevelopmentDevelopment
……Using Using Visual Studio 2005Visual Studio 2005 and and IndigoIndigo
Connected Applications
Messaging
XML
Transports
Secure Reliable Transacted
Meta
data
Management Business
Process
…
How Does “Indigo” Stack How Does “Indigo” Stack Up?Up?
Devices Mobile
P2P EAI B2B Grid““Indigo”Indigo”