Skip to Content

In the blog series we outline how to model and develop Enterprise Services with SAP NetWeaver CE 7.1, but what about the previous release NetWeaver 7.0 can that be used as well?

 

Find out by reading on and downloading the detailed document created by our colleague Hans-Joachim Odlozinski.

 

Missed out the first part(s) of the series? Start up with 360° View on enterprise SOA : Provide and consume your own enterprise services-  Introduction (Part 1).

Blog Overview

This blog series describes how to reengineer “existing offerings into a set of well-governed, harmonized and technology-agnostic enterprise services”, to ultimately consume these. This installment shows the service implementation with the help of Axis2 and the deployment of these services.

Please see the 360° View on enterprise SOA: Provide and consume your own enterprise services – Implement the provided Enterprise service within the SAP NetWeaver Developer Studio using Java (Part 7) part for the background of the services we’re going to implement.

How do we do it?

  • Download and install Axis2 from http://ws.apache.org/axis2
  • Download and install Ant if you don’t have it (http://ant.apache.org/)
  • Use the WSDL2Java tool to create the skeletons for you service from the WSDL
  • Implement the service in the generated Java class
  • Generate the *.aar file with “ant jar.server”
  • Package the resulting file in a WAR and then EAR file
  • Create a J2EE Library with the NetWeaver 7.0 Developer Studio for Axis
  • Deploy both the Axis2 Library and the EAR file containing the service
  • Validate and configure the Aixs2 runtime
  • Upload the *.aar file created earlier with the Axis2 web frontend
  • Test your service

To get the full step-by-step details please read Enterprise Service Provisioning on SAP NetWeaver Using Apache Axis Web Services Framework

Why is this so complicated?

 

First of all NetWeaver 7.0 and it’s tools doesn’t have the capability to generated a web service top-down from a existing interface description (WSDL). So we add this functionality to the stack using the Axis2 framework. Second Axis2 comes with a different version of some common libraries that are also part of the NetWeaver Java Server, but in a different version. The resulting classloading conflicts has the be worked around with a slightly more complex application architecture consisting of a library and an application.

The good news is that some of the steps above need to be done only once and subsequent service implementation will be much easier.

The easiest solution however is to move up to SAP NetWeaver CE 7.1 if that’s feasible for you.

 

In a nutshell: From having your WSDL handy -> running your service on SAP NetWeaver 7.0

You’ve now implemented the Enterprise Service modeled in Part 5 using Axis2. Publication and classification of the service into a existing Services Registry needs to be done manually.

From here you can jump to Part8 for a view on the Services Registry or Part 9 if you want to start using your service with Visual Composer.

 

In the following the links to the other blogs from the series:  

1. 360° View on enterprise SOA : Provide and consume your own enterprise services-  Introduction (Part 1)
2. 360° View on enterprise SOA: Provide and consume your own enterprise services – The End-to-End Scenario (Part 2)
3. 360° View on enterprise SOA: Provide and consume your own enterprise services – Obtaining SAP Composition Environment 7.1 with ESR (Part 3)
4. 360° View on enterprise SOA: Provide and consume your own enterprise services – Installing and Configuring SAP Composition Environment 7.1 with ESR (Part 4)
5. 360° View on enterprise SOA: Provide and consume your own enterprise services – Model and define your own Enterprise Services (Part 5)
6. 360° View on enterprise SOA: Provide and consume your own enterprise services – NetWeaver Developer Studio Installation and Update (Part 6)
7. 360° View on enterprise SOA: Provide and consume your own enterprise services – Implement the provided Enterprise service within the SAP NetWeaver Developer Studio using Java (Part 7) 
7b. 360° View on enterprise SOA: Provide and consume your own enterprise services – Enterprise Service Provisioning on SAP NetWeaver Using Apache Axis Web Services Framework (Part 7b) (This blog)
7c. 360° View on enterprise SOA: Provide and consume your own enterprise services – Using the Composite Application Framework (CAF) of SAP NetWeaver CE 7.1 EhP1 to implement the provided Enterprise service (Part 7c)
8. 360° View on enterprise SOA: Provide and consume your own enterprise Services – Publish, discover and test the Enterprise Services within the Services Registry (Part 8)
9. 360° View on enterprise SOA: Provide and consume you own Enterprise Services – Consume your Enterprise Services within Visual Composer (Part 9)
10. 360° View on enterprise SOA: Provisioning and Consumption Blog Series Summary (Final Part)

To report this post you need to login first.

6 Comments

You must be Logged on to comment or reply to a post.

  1. Anonymous
    “Download and install Axis2 from http://ws.apache.org/axis2
    “Download and install Ant if you don’t have it (http://ant.apache.org/)”
    “Use the WSDL2Java tool to create the skeletons for you service from the WSDL”
    “Implement the service in the generated Java class”
    “Generate the *.aar file with “ant jar.server””
    “Package the resulting file in a WAR and then EAR file”
    “Create a J2EE Library with the NetWeaver 7.0 Developer Studio for Axis”
    “Deploy both the Axis2 Library and the EAR file containing the service”
    “Validate and configure the Aixs2 runtime”
    “Upload the *.aar file created earlier with the Axis2 web frontend”

    Hmm… why not just write a simple ABAP application and get the work done… ??

    😉

    (0) 
    1. Hans-Joachim Odlozinski
      Hello Trond,

      The answer is actually pretty simple. You are right in saying that this is a fairly complicated procedure. This procedure of deploying axis2 web service implementations on NW 7.0 Java came from partner requirements. The vast majority of Independent Software Vendors (ISV) now do not implement on ABAP at all and will not do so. JEE and .Net are the by far most common development environments and in the JEE sector, axis2 is a de facto standard.

      Now most ISVs will not want to tie themselves to just one JEE vendor as the end customers use a big spectrum of JEE vendors. That is why we have to support such de facto standards like axis2.

      Best regards,
      HaJo

      (0) 
  2. Goverdhan Totawar
    Hi,

    Help!

    The document “Service Provisioning on SAP NetWeaver Using Apache Axis Web Services Framework” says “Step 2 – Modify the service *.aar file”.

    1. I have unzipped and deleted all the folder from .aar leaving META-INF.
    2. Create a new jar file using the all the folder deleted from step 1 above.
    3. Inculded the new jar file in j2ee lib project
    4. Zipped META-INF(only) folder with service.xml into a .aar.
    5. Deployed the modified using upload service in axis2 web app

    The service is deployed is faulty. error message, service.xml file missing.

    Any idea what the Step 2 – Modify the service *.aar file is? The document say separating service metadata from impl. not sure what it means.

    (0) 

Leave a Reply