1 / 15

Web Services

Explore how Web Services offer a reliable, scalable, and efficient solution for sharing ocean science data. Learn about SOAP, XML, and distributed computing along with benefits, implementation, and examples of Web Services in action.

costilla
Download Presentation

Web Services

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Web Services A good choice for sharing [ocean science] data.

  2. Distributed Computing • Connecting systems • Transparency • Scalability • Fault Tolerance

  3. Data Sharing Obstacles • Platforms • Languages • Transports

  4. Data Sharing Methods • CORBA, RMI, DCOM • Problems • Goals lacked heterogeneous environment • Difficult-to-implement • Proprietary protocols • Not modular – crammed specifications

  5. The Web Service Defined: Process between systems • Leverage Internet standards • Passes XML messages over HTTP • Promotes • Interoperability • Perl to C++ to AppleScript… • Loose coupling • Implementation-independent & Versioning

  6. SOAP • The Emerging Web Service • Interface to existing programs • Modular Design • Extensible – add-on distinct specs • Security • Reliability • Customizable – combine features as needed • No forced model • 80+ implementations (platforms,languages)

  7. SOAP: Requirements • Application • Application Server • SOAP Implementation • XML parser (sometimes)

  8. SOAP: How It Works • Calls functions of existing programs • Application server knows: • Available functions • How to decode requests • How to encode responses • XML Request – invokes a function call • With function parameters (if necessary) • XML Response • Packages returned data of the function

  9. SOAP: Getting Started • Receiving SOAP requests • Define a SOAP “Service” • Tell Server “Providing” program • How to translate data (mapping) • Sending SOAP requests • Write SOAP call • Knowing what you are receiving • What parameters to pass along (if necessary)

  10. SOAP Example • Online Address Book • Functions: • getAddressForName( name ) • addEntry( <some data> ) • getAllListings()

  11. SOAP Response: Notify Server <isd:service … id="urn:AddressFetcher"> <isd:provider type="java" ... methods="getAddressFromName addEntry getAllListings" … class="samples.addressbook.AddressBook" … … <isd:mappings> … </isd:service>

  12. SOAP Request: Making the Call URL url = new URL("http://ragnarok.whoi.edu:7001/soap/servlet/rpcrouter"); … Call call = new Call(); … call.setTargetObjectURI("urn:AddressFetcher"); call.setMethodName("getAddressFromName"); … Vector params = new Vector(); params.addElement( … "John B. Good“ …); call.setParams(params); Response response = call.invoke(url); Parameter ret = response .getReturnValue(); … <do something>

  13. SOAP: In Action getAddressFromName(“John B. Good”) Try it addEntry(“John Doe ...”) Try it getAddressFromName(“John Doe”) Try it getAllListings() Try it

  14. SOAP: Drawbacks • Performance • XML lacks efficiency of parsing • XML Infoset (W3C recommendation) • HTTP limitations

  15. Popular Web Services

More Related