advertisement
Premier Club Log In/Registration
  Include Code  Search Tips
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   SKILLBUILDING  |   TIP BANK  |   SOURCEBANK  |   FORUMS  |   NEWSLETTERS
Browse DevX
Download the Code!
Partners & Affiliates
advertisement
advertisement
advertisement
Rate this item | 0 users have rated this item.
Email this articleEmail this article
 
RESTful Web Services: The Keep-It-Simple Style
Discover why RESTful web services are often called web services for developers. 

advertisement
first wrote an XML-over-HTTP web service almost a decade ago. At that time, it seemed a completely natural solution to a practical business problem: provisioning web-based, product-pricing quotes. As web services became a formal technology with numerous standards, I became somewhat weary of the true usefulness of the technology. It grew so complex and institutionalized that it carried a significant learning curve and required considerable investment in the infrastructure. I often wondered what happened to my primitive XML-over-HTTP/S services, and why they were not good solutions anymore. They worked perfectly well for my application—a major e-business site serving a great number of diverse businesses across the globe.


Then two years ago I had a revelation: my good, old style of web services design was back and it now had a formal name—REST (Representational State Transfer). It was documented in the doctoral work of Roy Fielding, primary architect of HTTP 1.1 and co-founder of the Apache HTTP server project. Since then, I have effectively adopted REST as my architectural style for web services, and I have successfully applied it on multiple occasions.

This article demonstrates the most essential features of RESTful web services through a sample shipment-tracking application implemented in Java. Hopefully, it will pique your interest in this very common-sense architectural style.

Key Properties of the REST Architectural Style
REST is not a standard like SOAP or a protocol like HTTP—for that matter, it is not necessarily a services-oriented protocol either. Rather, it is a set of extraordinarily simple recommendations on how to leverage Internet protocols, formats, and infrastructure to accomplish technically sound and well-defined interoperable architectures. Although REST (like SOAP) is often associated with XML, XML is not a premise of REST and following the REST style does not automatically mean using XML. REST is primarily an architectural style, and as such it is far more concerned with the proper and complete utilization of web infrastructure and protocols than with the specifics of the exact formatting for the resource state representation.

REST's focus is really on web resources, related operations, and the transfers of their state representation to the clients. These web resources have representational states that are created, accessed, updated, and deleted via standard methods of the HTTP protocol: PUT to create, GET to read, POST to update, and DELETE to delete. (Think of RESTful services as CRUD (Create, Read, Update, Delete) operations upon web resources.)

In addition, probably the most attractive fact about the REST architectural style is that it fully leverages the most common and readily available parameters and methods of the HTTP protocol, such as HTTP methods, headers, representations, types, and caches. For that reason, REST architectural style has been recently included in the concept of WOA (web-oriented architecture), as it truly represents the architectural style of the mechanism that operates underneath the web as we know it.

  Next Page: REST in the Context—Global Tracking Application


Page 1: IntroductionPage 3: Inputs and Outputs for RESTful Services
Page 2: REST in the Context—Global Tracking Application 
advertisement
Advertising Info  |   Member Services  |   Permissions  |   Contact Us  |   Help  |   Feedback  |   Site Map  |   Network Map  |   About


JupiterOnlineMedia

internet.comearthweb.comDevx.commediabistro.comGraphics.com

Search:

Jupitermedia Corporation has two divisions: Jupiterimages and JupiterOnlineMedia

Jupitermedia Corporate Info


Legal Notices, Licensing, Reprints, & Permissions, Privacy Policy.

Advertise | Newsletters | Tech Jobs | Shopping | E-mail Offers

Solutions
Whitepapers and eBooks
IBM Whitepaper: Innovative Collaboration to Advance Your Business
Internet.com eBook: Real Life Rails
Avaya Article: Call Control XML - Powerful, Standards-Based Call Control
Internet.com eBook: The Pros and Cons of Outsourcing
Go Parallel Article: Scalable Parallelism with Intel(R) Threading Building Blocks
Internet.com eBook: Best Practices for Developing a Web Site
IBM CXO Whitepaper: The 2008 Global CEO Study "The Enterprise of the Future"
Avaya Article: Call Control XML in Action - A CCXML Auto Attendant
Go Parallel Article: James Reinders on the Intel Parallel Studio Beta Program
IBM CXO Whitepaper: Unlocking the DNA of the Adaptable Workforce--The Global Human Capital Study 2008
Adobe Acrobat Connect Pro: Web Conferencing and eLearning Whitepapers
Go Parallel Article: Getting Started with TBB on Windows
HP eBook: Storage Networking , Part 1
MORE WHITEPAPERS, EBOOKS, AND ARTICLES
Webcasts
Go Parallel Video: Intel(R) Threading Building Blocks: A New Method for Threading in C++
HP Video: Is Your Data Center Ready for a Real World Disaster?
Microsoft Partner Portal Video: Microsoft Gold Certified Partners Build Successful Practices
HP On Demand Webcast: Virtualization in Action
Go Parallel Video: Performance and Threading Tools for Game Developers
Rackspace Hosting Center: Customer Videos
Intel vPro Developer Virtual Bootcamp
HP Disaster-Proof Solutions eSeminar
HP On Demand Webcast: Discover the Benefits of Virtualization
MORE WEBCASTS, PODCASTS, AND VIDEOS
Downloads and eKits
Microsoft Download: Silverlight 2 Software Development Kit Beta 2
30-Day Trial: SPAMfighter Exchange Module
Red Gate Download: SQL Toolbelt
Iron Speed Designer Application Generator
Microsoft Download: Silverlight 2 Beta 2 Runtime
MORE DOWNLOADS, EKITS, AND FREE TRIALS
Tutorials and Demos
IBM IT Innovation Article: Green Servers Provide a Competitive Advantage
Microsoft Article: Expression Web 2 for PHP Developers--Simplify Your PHP Applications
Featured Algorithm: Intel Threading Building Blocks - parallel_reduce
MORE TUTORIALS, DEMOS AND STEP-BY-STEP GUIDES