Presentation is loading. Please wait.

Presentation is loading. Please wait.

Project Stonehenge for.NET Ben Dewey twentysix New York Apache Stonehenge Committer

Similar presentations


Presentation on theme: "Project Stonehenge for.NET Ben Dewey twentysix New York Apache Stonehenge Committer"— Presentation transcript:

1 Project Stonehenge for.NET Ben Dewey twentysix New York Apache Stonehenge Committer http://bendewey.wordpress.com

2 What is Project Stonehenge? Stonehenge is sponsored by the Apache Software Foundation, a leader in the Open Source community, and was created to build reference applications that demonstrate the use of WS-* Standards in real-world project implementations

3 Goals Illustrate and develop best practices for interoperable applications that communicate via distributed protocols Demonstrate interoperability between platforms Provide sample code upon which SOA developers can build their own applications Potentially identify interoperability issues and their solutions Build confidence in cross-platform deployment of SOA technologies.

4 My Role (since April 2009) Created.NET Install Documentation Redesigned.NET StockTrader Client Create Interop Guide Provided various other code and wiki updates Release Manager for M2

5 Terms SOA – Service-Oriented Architecture WS-* – Web Service Standards W3C- World Wide Web Consortium OASIS - Organization for the Advancement of Structured Information Standards WCF – Windows Communication Foundation AXIS2-Java/Metro – Java Web Services Frameworks AXIS2-C (PHP) – C Web Services Framework

6 .NET Web Services(WS) Background Past – ASP.NET Web Services (ASMX) – WSE (Web Service Extensions) Present – WCF (“Indigo”) Future – Distributed Application Server (“Dublin”) – MSE (Managed Services Engine)

7 Example SOAP Message SubmitOrder http://26ny-stoneh-r2:8001/tradeorderprocessor 100000108 buy open 2009-07-14T23:07:13.3740234-04:00 0001-01-01T00:00:00 100 1 15.95 s:3

8 WS-* Specifications WS-Messaging – SOAP (Packet, Envelope with a Header and a Body) – WS-Addressing (To, From, Action) WS-MetaData Exchange – WS-Policy – (Envelope Requirements) – WSDL – Web Services Definition Language (Policies, Types, Binding, Service) WS-Security – WS-Signature – (Prevents Tampering) – WS-Encryption – (Prevents Snooping) – WS-Trust/Federation – (Authenticates and Provides Roles) WS-ReliableMessaging – Transactions http://en.wikipedia.org/wiki/WS-*

9 Example SOAP Message (WS-Sec Header) SubmitOrder http://localhost:8001/sec

10 Example SOAP Message (WS-Sec Element) … gH27sFs3Ay…fyHIuFEZg= … Ct2hjN…Np7qpZLXYL5

11 Example SOAP Message (WS-Sec Body) <e:EncryptedData Id="_4" Type="http://www.w3.org/2001/04/xmlenc#Content" xmlns:e="http://www.w3.org/2001/04/xmlenc#"> FvifwljMEc…NUs4RvaG++Ww==

12 Example SOAP Message (WS-Sec) SubmitOrder http://26ny-stoneh-r2:8001/tradeorderprocessor/sec … gH27sFs3Ay…fyHIuFEZg= … Ct2hjN…Np7qpZLXYL5 FvifwljMEc…NUs4RvaG++Ww==

13 Apache Stonehenge Project

14 Apache Software Foundation Apache Group “Web Server” Meritocracy – Committer Status Legal protection Mailing list correspondence Individualism – Nobody has any affiliations within Apache

15 Stonehenge Timeline Initial phase – Proposal submitted by WSO2, announced at ApacheCon US 2008 – Microsoft joined as a contributor with other vendors IONA, RedHat/Jboss – Stonehenge was accepted as a new Apache Incubator project on Nov 18, 2008Apache Incubator WSO2 contributed two StockTrader implementations with AXIS2 – A StockTrader client application in WSF(Axis2/C)/PHP,WSF(Axis2/C)/PHP – Two service implementations running on WSF/PHP, and WSAS (Axis2/Java).WSF/PHPWSASAxis2/Java Microsoft contributed the StockTrader implementation in WCF for.NET First “interop” lab published on May 2009 – http://cwiki.apache.org/confluence/display/STONEHENGE/ http://cwiki.apache.org/confluence/display/STONEHENGE/ Sun joined with Microsoft for a keynote at JavaOne to announce their contribution to the project on June 2009 – Sun contributes service implementations to the StockTrader application in Metro(Java) running on Glassfish.

16 Apache Stonehenge StockTrader Application “The flagship application”

17 StockTrader Application Overview Stock trading scenario application – Trader Client – Business Service - login/list/quote/buy/sell operations – Order Processing Service - buy/sell operations.NET Client PHP Client

18 StockTrader Interop Lab.NET, Java, PHP Interoperability scenarios using the contributions from WSO2 and Microsoft: – Java – PHP –.NET Interoperating different layers and formats: – Basic Web Services standards (SOAP) – SOAP with WS-Security (Encryption and Signing) Installation/configuration guides published on the Stonehenge wiki: – http://cwiki.apache.org/confluence/display/STONEHENGE/ http://cwiki.apache.org/confluence/display/STONEHENGE/ Blog post: – http://blogs.msdn.com/interoperability/ http://blogs.msdn.com/interoperability/

19 StockTrader Interop Lab - Diagram StockTrader.NET ASP.NET-WCF StockTrader PHP PHP-WSF(Axis2/C) StockTrader Java WSAS-Axis2/Java Web UI Data Access Web UI Business Services Order Processing Data Access Database Business Services Order Processing Data Access Business Services.NETPHPWSAS Web Service calls: Order Processing

20 Apache Stonehenge StockTrader Application Interoperability Demonstration

21 Scenario 1 StockTrader.NET ASP.NET-WCF StockTrader PHP PHP-WSF(Axis2/C) StockTrader Java WSAS-Axis2/Java Web UI Business Services Order Processing Business Services Order Processing Business Services Order Processing

22 Scenario 2 StockTrader.NET ASP.NET-WCF StockTrader PHP PHP-WSF(Axis2/C) StockTrader Java WSAS-Axis2/Java Web UI Business Services Order Processing Business Services Order Processing Business Services Order Processing

23 Scenario 3 StockTrader.NET ASP.NET-WCF StockTrader PHP PHP-WSF(Axis2/C) StockTrader Java WSAS-Axis2/Java Web UI Business Services Order Processing Business Services Order Processing Business Services Order Processing

24 Scenario 4 StockTrader.NET ASP.NET-WCF StockTrader PHP PHP-WSF(Axis2/C) StockTrader Java WSAS-Axis2/Java Web UI Business Services Order Processing Business Services Order Processing Business Services Order Processing

25 Scenario 5 StockTrader.NET ASP.NET-WCF StockTrader PHP PHP-WSF(Axis2/C) StockTrader Java WSAS-Axis2/Java Web UI Business Services Order Processing Business Services Order Processing Business Services Order Processing

26 Scenario 6 StockTrader.NET ASP.NET-WCF StockTrader PHP PHP-WSF(Axis2/C) StockTrader Java WSAS-Axis2/Java Web UI Order Processing Business Services Order Processing Business Services Order Processing Business Services

27 Scenario 7 StockTrader.NET ASP.NET-WCF StockTrader PHP PHP-WSF(Axis2/C) StockTrader Java WSAS-Axis2/Java Web UI Business Services Order Processing Business Services Order Processing Business Services Order Processing

28 Future of Stonehenge StockTrader – Metro – Federated Identity – REST – AMQP (Advanced Message Queuing Protocol) Whatever the community decides

29 Call to Action Visit the Apache Stonehenge Website – http://incubator.apache.org/stonehenge http://incubator.apache.org/stonehenge Join the Mailing List Follow along, join the discussion Download the code Run the interoperability labs Give us feedback

30 Videos WSO2 and Microsoft demonstrate interoperability at TechEd IT Pro 2008 – http://video.msn.com/video.aspx?mkt=en- us&vid=7019fbb8-4d12-4f56-93a1-a39b9d2ccb00 http://video.msn.com/video.aspx?mkt=en- us&vid=7019fbb8-4d12-4f56-93a1-a39b9d2ccb00 Sun and Microsoft Demonstrate Metro contribution to Project Stonehenge at JavaOne in 2009 – http://java.sun.com/javaone/2009/playlist.jsp?pid=24 744799001&autoStart=on http://java.sun.com/javaone/2009/playlist.jsp?pid=24 744799001&autoStart=on

31 Links Apache Stonehenge Homepage – Bug Tracking, Wiki, Source Code, etc – http://incubator.apache.org/stonehenge http://incubator.apache.org/stonehenge Stonehenge Wiki, Installation Guides, Labs – http://cwiki.apache.org/confluence/display/STONEHENGE http://cwiki.apache.org/confluence/display/STONEHENGE Ben Dewey’s Blog Getting Started Guide – http://bendewey.wordpress.com http://bendewey.wordpress.com Kamaljit Bath’s Blog (Principal Program Manager, Microsoft) – http://blogs.msdn.com/interoperability http://blogs.msdn.com/interoperability ConnectedShow Podcast (Dimitry Lyalin & Peter Laudati) – http://connectedshow.com/?Episode=8 http://connectedshow.com/?Episode=8 Apache Foundation: Getting Involved – http://apache.org/foundation/getinvolved.html http://apache.org/foundation/getinvolved.html

32 Questions


Download ppt "Project Stonehenge for.NET Ben Dewey twentysix New York Apache Stonehenge Committer"

Similar presentations


Ads by Google