IBM®
Skip to main content
    United States change      Terms of use
 
 
Select a scope:    
     Home      Products      Services & industry solutions      Support & downloads      My account     
alphaWorks  >  SOA and Web services  >  

Web Services Response Templates

A tool and programming pattern that abstracts the programmatic interfaces to Web services, giving clients control of the data structures returned from a Web service.


Date Posted: April 27, 2005
OverviewRequirements Download FAQs Forum Reviews

What are Web Services Response Templates?

Web service providers have a common problem when dealing with multiple clients: Web Services Description Language (WSDL) prescribes an exact interface for data types, messages, and operations that implicitly restricts clients to a usage pattern that is not necessarily appropriate or efficient. Service providers must choose the WSDL they expose, even though clients are the ones who best know the most efficient interface for their usage patterns. The result is an unattractive choice for service providers: to provide multiple interfaces for multiple clients (which are hard to develop and to maintain), or to provide a single "one size fits all" compromise interface. That compromise has the service provider making choices about how to avoid message bloat (too much data) or overly chatty interactions (not enough data); these are choices that clients are in the best position to make.

Web Services Response Templates (WSRT) allows clients to program toward abstract data and service models, rather than directly to WSDL-specified interfaces, and then specify a subset of information in that model to be returned as the result of service invocation. In addition to defining the structure of the response, clients can supply additional search parameters in order to qualify which objects will actually be returned. This gives the client a high degree of control over the service result and lets him optimize data flow to his own specifications. In addition, it allows service providers to develop the interfaces they provide without necessarily breaking existing clients.

How does it work?

The WSRT package includes libraries for service providers that enable their Web services to process WSRT requests (this does not preclude the service provider from including other, non-WSRT Web services in the same application). In addition, a toolkit for JAX-RPC-based clients is provided in order to facilitate the generation of WSRT requests. This toolkit is not required in order to generate WSRT requests; they can be sent manually by any Web service client, since they obey existing Web service standards.

About the technology author(s):

Michael H. Conner Michael H. Conner, Ph.D., is a Distinguished Engineer and Member of the IBM Technical Academy. He is the Chief Technical Officer for Enterprise Integration in IBM, where he is leading a worldwide team in accelerating the adoption of modern, integrated, and componentized IT architecture based on IBM middleware. The team is working with customers, ISVs, and product developers to develop solutions, reference implementations, and product extensions that illustrate and support the building of these types of architecture.

Previously, Dr. Conner was CTO for XML and Web Services and was responsible for leading IBM's efforts to develop XML and Web service technology and provide customers with tools and infrastructure for developing and deploying Web services. He has many years of experience in enterprise application architecture, including leading the team that defined the architecture for IBM's Framework for e-business. During his career, Dr. Conner has worked extensively in the areas of object technology, interactive interfaces, distributed computing, and e-business application architecture. His accomplishments include the invention and initial implementation of IBM's System Object Model (SOM), which marked IBM's entry into object-oriented application support and was used in numerous products. Dr. Conner was also the founding technical manager for the Andrew project at Carnegie Mellon University; this project developed break-though technologies in user interface and distributed file systems.

Dr. Eoin LaneDr. Eoin Lane is a senior solution engineer in IBM's Enterprise Integration Group. He served as the lead architect for the WSRT technology.

Daniel ShuppDaniel Shupp is a staff software engineer with IBM's Enterprise Integration Design Center in Beijing, China. He received a B.A. degree in computer science from Johns Hopkins University in 2000. Since joining IBM, Mr. Shupp has worked on emerging Internet technologies for the WebSphere Performance Group and has worked on dynamic caching and grid computing projects for WebSphere Application Server. He is currently on assignment in Beijing, working with the IBM China Software Development Lab on SOA projects for IBM and its customers.

He LeiHe Lei is a software engineer with IBM's Enterprise Integration Design Center in Beijing, China. She received an M.S. degree in computer science from BeiHang University in 2003. Since joining IBM, Ms. Lei has worked on China Grid project for the Grid Computing Group of CSDL and has worked on the PepBoys project for EIS design center.

Dr. Wang Shou HuiDr. Wang Shou Hui is a manager in IBM's Enterprise Integration Design Center in Beijing, China. She joined IBM as a staff software engineer in 2000 after working in the computing center of China Ministry of Railway for two years. Since 2002, she has led a team working on grid computing; Web service-related technology; and product development, testing, and customer engagements based on WebSphere.

Huang Ruo BoHuang Ruo Bo (RB) is a software engineer with IBM's Enterprise Integration Design Center in Beijing, China.

Zhang SenZhang Sen is a software engineer in the Enterprise Integration Design Center of Beijing, China. He received a M.S. degree in computer science from Beijing University of Aeronautics and Astronautics in 2002. Since joining IBM, he had taken part in development of grid computing related projects, development for WS-RT, and now is focused on SOA projects.

Dr. Zhihong RenDr. Zhihong Ren is a staff software engineer with IBM's Enterprise Integration SOA Design Center in Beijing, China. He received a Ph.D. degree in computer science from the Institute of Software, Chinese Academy of Sciences, in 2004. Since joining IBM, Dr. Ren has worked on emerging Web services technologies and grid computing projects. He is currently working with the IBM China Software Development Lab on SOA projects.

Sun DuoWeiSun DuoWei is a software engineer working for CSDL in IBM China.

Download now Download now

Related technologies

For platform(s):
Java

For topics:
interface abstraction, Rational Rose, templates, Web service, WebSphere Studio Application Developer, program that abstracts, Web Services Description Language, WSDL


 

    About IBM Privacy Contact