210 likes | 361 Views
Evaluating Web Services for FDMS. Cynthia Loitch OAR/PMEL (PI) Eugene Burger OAR/PMEL. NOAA Research Webshop 2003 Longmont, CO 3-5 June 2003. Overview. What are Web Services, SOAP and FDMS? Goals Evaluation process Requirements for FDMS? Architecture Implementation Impressions
E N D
Evaluating Web Services for FDMS Cynthia Loitch OAR/PMEL (PI) Eugene Burger OAR/PMEL NOAA Research Webshop 2003 Longmont, CO 3-5 June 2003
Overview • What are Web Services, SOAP and FDMS? • Goals • Evaluation process • Requirements for FDMS? • Architecture • Implementation • Impressions • Conclusion
Web Services & SOAP • Web services is a misnomer; it has nothing to do with the Web • Web services encompass a set of related standards that enable computer applications to communicate and exchange data via the Internet. • Web Services are a technology for exposing a software API to the Internet • Web Services Abstraction allow independent alteration of client and/or server configuration • Technologies utilized: • HTTP • XML – eXtensible Markup Language • SOAP – Simple Object Access Protocol • W3c Standard supported by Microsoft, IBM etc. • An XML based protocol that enables applications to communicate over the internet by using XML documents called SOAP messages.
FDMS • FDMS is the Financial Database Management System utilized by NOAA Research • Commitment tracking software • Used throughout NOAA Research • 19 offices located throughout the U.S. • Remote access via Citrix Server • Migrating system to a single SQLServer database • Considering alternative client technologies with this database
Goals • To answer the question: Are Web Services with SOAP a viable client-server technology alternative for use in the next generation of the FDMS application?
Evaluation process • Familiarize ourselves with technology • Server infrastructure • Client options • Bandwidth restraints, if any
Requirements • Client server application • Secure data transfer • Authenticated user sessions
Query page • Screen snapshot of the dataset selection webpage • Asking to see information on Credit Card data download from CAMS
Result set rendering • Screen snapshot of the results web page • Shows when Credit Card data downloads occurred
API exposed by the Web Services • 2 methods exposed • getDownloadDates(String) • getDownloadSets(Date)
SOAP Invocation messageHTTP Post Header Post /ccx/DownloadMonitor HTTP/1.0 Content-Lentgh: 541 Host: Localhost Content-Type: text/xml; charset=utf-8 SOAPAction: "Axis:DownloadMonitor:DownloadService#getDownloadDates"
SOAP Invocation messageRoot element - namespace declarations <?xml version=1.0" encoding="UTF-8"?> <SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd=http://www.w3.org/2001/XMLSchema" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/">
SOAP Invocation message Root element - envelope body <SOAP-ENV:Body> <ns1:getDownloadDates xmlns:ns1="axis:DownloadMonitor:DownloadService"> <DataSet xsi:type="xsd:String"> FIMAOO </DataSet> </ns1:getDownloadDates> </SOAP-ENV:Body> <SOAP-ENV:Envelope>
SOAP response message HTTP/1.0 200 OK Content-Type: text/xml; charset=utf-8 Content-Length: 580 Date: Mon, 26 May 2003 16:23:34 GMT
SOAP response message <?xml version="1.0"?> <SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd=http://www.w3.org/2001/XMLSchema" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/">
SOAP response message <SOAP-ENV:Header/> <SOAP-ENV:Body SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"> <cc1:getDownloadDatesResponse xmlns:cc1="axis:DownloadMonitor:DownloadService" SOAP-ENC:root="1"> <return xsi:type="xsd:date"> 1/29/2003 3:33:30 PM </return>
Conclusion • FDMS Applicability • Tomcat and Axis server configuration settings can be complex • SOAP messages have some bandwidth overhead • this could be mitigated by using compression • Custom software could simplify (FDMS) architecture • Because the user community is limited, custom written architecture is an option with FDMS. • Industry standard Web Services does allow us to alter server / client applications independently • Client technologies, maybe using Web Services, will be considered • Microsoft InfoPath • Acrobat forms
Promising new technologies • Microsoft InfoPath • InfoPath 2003 (formerly code-named "XDocs") • New Microsoft Office addition (2003) • helps teams and organizations gather and share information by creating rich, dynamic XML–based forms. • www.microsoft.com/office/preview/infopath/default.asp • Also XML & WebServices based
Conclusion • Our experience has lead us to science applications for which Web Services and SOAP are well suited. • We will be developing Web Services for NOAA TAO El Nino buoy data in FY03