How to Consume an Enterprise Service from the ES Workplace in Web Dynpro in the new SAP NetWeaver Composition Environment 7.1
Are you thrilled by the exciting possibilities around eSOA? Have you browsed through the registry of the ES Workplace on SDN to check out your favorite enterprise service? Do you love Web Dynpro as the enterprise-scale Java UI framework? Have you attended a session about the new SAP NetWeaver Composition Environment (CE) last year at TechEd?
And since then you have been keen on seeing how these components work together in a live end-to-end scenario?
Well, here’s a nice chunk of the carrot dangling in front of your nose for you to savor!
Just as you, I was anxious to see how I can leverage the new Composition Environment 7.1 and ES Workplace – the public SAP Enterprise Services Repository – to get to a new level of composite business application development.
Now I am happy to share my experiences with you by making a step-by-step demo of my little development project available to the SDN Community.
This is the use case:
“Develop a Web Dynpro application that shows some details of a purchase order.”
This is the scenario:
- I want to browse an enterprise service registry for an enterprise service that provides details for a given purchase order number (something like “read purchase order”).
- Of course, this enterprise service has to have an implementation endpoint, i.e. an eSOA-enabled ERP-backend that implements and provides this enterprise service.
- After I have identified the service I want to use it in an adaptive web service model in Web Dynpro Java.
- I build up my Web Dynpro application on top of this model. With all the great wizards and modeling tools within Web Dynpro I can achieve this with minimal coding efforts.
- My adaptive web service model will work with logical web service destinations that point to the ERP-backend that I identified as endpoint for my service in the ES workplace registry.
- That’s it: My application can be deployed and is ready to run!
This is the set-up:
- I am using the ES Workplace as my eSOA infrastructure.
- I look up an enterprise service from its enterprise services registry and import its service definition to my local development environment at design time (1).
- Later on, my Web Dynpro application will call the SAP ERP 2005 system of ES Workplace to execute this enterprise service (2).
The ES Workplace team is constantly enhancing the ES Workplace system landscape. As part of their efforts physical system names may change and systems that you see in the demo may no longer be available.
In April ’07, the ERP system changed from FU2 to HU2. That means, that the Web Service destinations shown in the demo no longer work. Check my other How to consume an Enterprise Service from the ES Workplace in Web Dynpro – Part II: Sample Code for Download for the new settings.
- On the other hand, I have the new SAP NetWeaver Composition Environment 7.1 installed locally.
- I use the SAP NetWeaver developer studio to create and model my Web Dynpro application from scratch (3).
- I have a local SAP Java server as the runtime for my application (4).
The demo is based on SAP NetWeaver 7.1 Composition Environment. It’s not SAP NetWeaver 7.0 (aka 2004s).
And these are the three parts of the demo (all parts with voice):
- In part 1, we create an Adaptive Service Model based on a real enterprise service that we can look up in the Enterprise Services Registry of the Enterprise Services Workplace.
It might be the most interesting one for you as it makes use of the new registry browser to look up an enterprise service. And it shows how the new development environment and an enterprise service registry can boost service consumption in a composite application.
- In part 2, we use the adaptive web service model created in the first part to model and develop a simple Web Dynpro application. We make use of the modeling capabilities of Web Dynpro and its templates for controllers and views.
It is standard Web Dynpro and should also be suitable for a Web Dynpro newbie.
- Part 3 shows the necessary configuration in the NetWeaver Administrator tool and the application in action: we create the web service destinations for our adaptive web service model and finally run the application.
You may not want to miss this part as it tops our little demo off with the actual “go-live”.
I hope you like this little demo as much as I liked creating it. Have fun!