This is the first blog entry in what will be a series of blogs about SAP’s implementation of the WS-I Sample Application (more on what this is below). SAP recently retired its former implemenation of the WS-I Sample Application. I am partly responsible for that decision and I am partly responsible for the new implementation. My colleague, Martin Raepple, and I are going to use this opportunity to share our experiences in developing the new version of the WS-I Sample Application with you over the next several weeks in blog format.
What is the Sample App and why rewrite it?
For those of you unfamiliar with the Sample Application, it is basically a proof of concept application that was designed by a working group consisting of representatives from various member companies within the WS-I. The intention is to show that different vendors can implement the profiles produced by WS-I and that the resulting efforts will actually be interoperable with each other. More detailed information about WS-I and the background of the Sample App will follow in the next blog of the series.
There are numerous reasons why SAP decided to rewrite the implementation. The main reason is that we have a new release of our platform available with many new features in the area of web services. We hope to illustrate all of the advantages of developing web service applications on SAP’s platform, as well as highlight the workarounds we found for the common pitfalls that we ran into. We will also take these experiences back to the relevant development teams within SAP and hopefully increase the usability of the platform in the process.
Why a blog series?
Originally we had decided that it would be a good idea to publish a guide along with the sample application. However, writing a full document would have involved authoring all of the material up front and going through an extensive review process, including ensuring that things like the pixel height of a given header matched our corporate layout. Since the focus of this effort is to provide customers with a guide about developing an application on a platform that is already available, we realized that this limitation would mean getting the information into your hands much later than our intended audience would like.
By providing readers the content in a blog format, we are able to short cut a lot of the formal requirements of producing a more massive article. It allows us to cut up the content into short digestible segments that we can put out as soon as they are ready, ultimately giving the reader more of a chance to benefit sooner from the work. The idea that blogs allow authors to reach a target audience, in our case, our customers who already have or are getting the new version of the product, much faster via the blog format is a potentially revolutionary new method of content distribution.
This method is particularly important given the scope of this project, i.e. writing a WS-I profile compliant application on a released version of the SAP platform. Since the platform has already been released, SAP’s customers are working on the same problems right now in the wild. Providing this content quickly should help guide them through the process. The feedback loop will be very tight with development, ensuring that any required changes can be made in the next service pack.
SDN also provides the reader with a built-in mechanism to provide this feedback and/or dialogue with peers in the form of the comments section associated with each blog. Your feedback in this area will be of great help to both us and your peers. If you are having similar experiences, or would like to share a suggested fix, we would welcome it with open arms. If you find any problems with the documentation we provide, we really hope that you will use the comments section of these blogs to point out these mistakes, both for us and for other readers. In a nutshell, constructive criticism is welcome.
Ultimately after all is said and done, I am hoping to package all of the content of these blogs together to produce exactly the document that we are avoiding in the short term. It will serve as a guide to the WS-I Sample Application package that SAP will publish. We are committed to also releasing the source code of our application, but we feel that the source would be much more useful if it contained the notes that we’ve made throughout the process of actually developing the application. Therefore the guide, including the experiences, suggestions, fixes, and general feedback from readers will also be published along with the source code.
We hope that this will provide the most value to our customers and the developers on our platform. Please feel free to contact me by leaving a comment below with your question or suggestion, and please subscribe to the RSS feed of this blog to receive notifications when the next blog in the series has been published.
What will we cover?
Here is a general overview of the various topics we will be covering over the course of the next few weeks:
- WS-I Sample App Blog Series – An Introduction
- WS-I Sample App Blog Series – Background of WS-I
- WS-I Sample App Blog Series – Overview of the Sample Application
- WS-I Sample App Blog Series: Basic Design Decisions
- Web service implementation strategy
- SOAP header processing
- Custom security processing
- Security configuration
- Building a UI using Web Dynpro