310 likes | 612 Views
Connecting Cold Fusion to .NET Using Web Services. Geoff Snowman Developer Community Champion gsnowman@microsoft.com. Connecting Cold Fusion to .NET Using Web Services. What is .NET? ASP.NET Demo Web Services Cold Fusion/.NET Interop Demo UDDI Dynamic UDDI Demo Q & A.
E N D
Connecting Cold Fusion to .NET Using Web Services Geoff Snowman Developer Community Champion gsnowman@microsoft.com
Connecting Cold Fusion to .NET Using Web Services • What is .NET? • ASP.NET Demo • Web Services • Cold Fusion/.NET Interop Demo • UDDI • Dynamic UDDI Demo • Q & A
“To remain ahead in this industry, you have to constantly deliver new solutions that continue to add value… We needed a platform that not only enabled rapid time-to-market… but one that would increase our ability to continually add new products and services. We chose the Microsoft platform…” The Customer Perspective Bella Loykhler CIO
.NET – Microsoft’s Vision of a New Generation for Application Development
VB C++ C# J# … Common Language Specification ASP .NET Web Forms Web Services Mobile Web Applications Windows Forms ADO .NET and XML Base Class Library .NET Architecture Visual Studio .NET Common Language Runtime Operating System
Class Library Namespaces System.Web System.Windows.Forms Services UI Design ComponentModel Description HtmlControls Discovery WebControls Protocols System.Drawing Caching Security Drawing2D Printing Configuration SessionState Imaging Text System.Data System.Xml OleDb SqlClient XSLT Serialization Common SQLTypes XPath System Collections IO Security Runtime InteropServices Configuration Net ServiceProcess Remoting Diagnostics Reflection Text Serialization Globalization Resources Threading
.NET Languages (Microsoft) • Microsoft: Visual Basic.NET • Microsoft: C# • Microsoft: C++ (Managed/Unmanaged) • Microsoft: J#
APL Fujitsu COBOL Micro Focus COBOL Eiffel Forth FORTRAN 95 Haskell Mercury Mondrian Oberon Pascal Perl Python RPG S# Scheme Standard Meta Language .NET Languages (Others)
Server Controls • Programmable, server-side objects • Properties, methods and events • Encapsulate both behavior and rendering • HTML, XML, WML, script, etc. • You can create server controls • Custom controls • User controls • Or derive from existing controls
Demo: ASP.NET
Internet connects entities together Email and WWW inherently cross boundaries XML Web Services applies the same platform neutral approach to system integration Platform Neutral Leverage Existing Standards No Rip and Replace E-mail Web Services WWW Connects Applications Connects People ConnectsPeople toInformation XML Web Services Explained
XML Web ServicesFoundation for Programmable Internet • Based on public standards • XML, XSD, WSDL, SOAP, UDDI • Not bound to any single platform • Protocol and format-based contract • Loosely coupled programming • Preserve and connect existing systems • Broad industry support
XML Web Services Language Independent Platform Independent Device Independent • LOB J2EE App • BEA Weblogic • Oracle 8i • Sun UE 10000 • SAP R/3 • DB2 • Solaris • IBM RS/6000 • Motorola i85s • J2ME XML Web Services • Compaq iPAQ • Windows CE • StrongARM • PeopleSoft 7.0 • SQL 2000 • Windows 2000/.NET • Compaq Proliant • PERL • Apache 2.0 • MySQL • Linux
Promoters group for Web services • Facilitate customer adoption • Ensure interoperability • Not a standards body • Industry alignment around Web services • First testing tools this year • More info: http://www.ws-i.org
Clients Tools Experiences & Solutions Services Servers Microsoft .NET Web services support across the Microsoft platform
“.NET is a brilliant strategy that enables Microsoft to define the next shift in the software business.” Gartner Group Gartner Web Services Magic Quadrant Ability to Execute IBM Sun HP Oracle Completeness of Vision *Source: Gartner Research, 9/13/2001 Analyst Perspective On .NET “Everyone should build on the XML/SOAP foundation.”Meta Group “Gartner believes Microsoft is now providing more vision and influence regarding this shift than any other vendor.” Gartner Group “.NET is a leading example of what we believe will be the dominant architectural model for the third generation of Internet applications.” Patricia Seybold Group
Demo: Cold Fusion calls .NET
Demo: .NET calls Cold Fusion
Case Study: Integrating Business Partners Organization • One of the world’s largest car rental agencies • More than 400 locations in 26 countries Business challenges • Cost of acquiring new customers too high • Needed to connect with diverse set of business partners to grow business • Online travel sites, airlines, hotels, travel agents, Web site
Solution – Web Services Network XML/SOAP Partner Dollar.com Request ASP Web Services(SOAP Listener)+(XML Parser) XML/SOAP MIT ANY Internet Device Results Dollar.com Dollar Reservations • Dollar cost-effectively opened up another sales channel that has provided thousands of new reservations per year, equating to millions of dollars in additional revenue • Partner connection richer, deeper and more dynamic – live with 25 partners in 2 months!
Customer Feedback “We knew exposing our reservation system as a Web service would provide a standard interface that could be used by a wide range of other applications, both internal and external. However, at the time, we had no idea just how often we would use it, or the magnitude of the benefits it would deliver.” – Peter Osbourne, Group Manager, Advanced Technology Group
WS-ReliableMessaging WS-Addressing WS-Security WS-Policy WS-Attachments WS-Coordination DIME WS-Inspection WS-Referral WS-Routing WS-Transaction BPEL4WS The Future - GXA
SOAP Message Example <?xml version="1.0" encoding="utf-8"?> <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <S:Header> <m:path xmlns:m="http://schemas.xmlsoap.org/rp"> <m:action>http://tickers-r-us.org/getQuote</m:action> <m:to>soap://tickers-r-us.org/stocks</m:to> <m:from>mailto:johnsmith@isps-r-us.com</m:from> <m:id>uuid:84b9f5d0-33fb-4a81-b02b-5b760641c1d6</m:id> </m:path> <wssec:Security xmlns:wssec="http://schemas.xmlsoap.org/ws/2002/04/secext"> <wssec:BinarySecurityToken ValueType="wssec:X509v3" EncodingType=“wssec:Base64Binary"> dWJzY3JpYmVyLVBlc…..eFw0wMTEwMTAwMD </wssec:BinarySecurityToken> </wssec:Security> </S:Header> <S:Body> <app:TrafficStatus xmlns:app="http://highwaymon.org/payloads"> <road>520W</road><speed>3MPH</speed> </app:TrafficStatus> </S:Body> </S:Envelope> Routing Security
.XML XML HTTP SOAP WSDL UDDI InfoPath is a Smart Client for XML Web Services BizTalk SQL InfoPath IIS STS ASP.NET Oracle, DB2, … SAP, PeopleSoft, Siebel,… ADO
What is UDDI? • Universal Description Discovery and Integration is an industry-wide project to standardize the discovery of web services. • Major vendors including Microsoft, IBM, Sun, Oracle and HP • Interoperable, cross-platform specifications • Publish and search • Based on Internet standards • Specs will be transitioned to a standards body. • Collaborate on standards, compete on implementations. • Public and Enterprise Implementations • UDDI Business Registry (UBR) • Public Internet registry operated by Microsoft and IBM, SAP and HP • Fully replicated, entirely interoperable • Enterprise UDDI Services in Windows Server 2003
Web services UDDI Services Scenario: Dynamic Application Configuration Enterprise UDDI Services allows dynamic configuration 1. Each sub registers financials web services in enterprise UDDI 2. Financial reporting system at HQ reads UDDI to discover each sub’s web service 3. Financial reporting system uses web service to read financials 4. Financial reporting system presents consolidated financial statement Financial Reporting System 5. Adding a new sub requires UDDI registration but no change in report app
Demo: UDDI
Summary: Enterprise Application Integration • Yesterday: Hardwired endpoints built with proprietary messaging frameworks • Point to Point • Difficult, Expensive • Not business context driven • Today: Loosely coupled endpoints built on standard messaging framework • End to End • Easier, Lower Cost • Business context driven