Download presentation
Presentation is loading. Please wait.
Published byValentina Cheak Modified over 9 years ago
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
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.