cancel
Showing results for 
Search instead for 
Did you mean: 

Creating a Web Service with SAP Netweaver.

Former Member
0 Kudos

Hey guys,

we are a group of students studying  Information Technology in Germany. In this semester, our project is about a webservice, which should interact with a database and a mobile app. Our problem now is, that we dont know how to start the work on this project. We are working with SAP Netweaver DS and AS 7.3. Can somebody of you guys help us where we should start looking for some tutorials which help us to proceed in this projectwork? We dont want any solutions, only some help to get in to it.

The main functionality of the webservice should be the recieving of data from the application and the saving of it in the database.

We thank you for any help you guys can give us.

Domae

P.S. Sorry for my bad english!!

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi Trevor,

thank you for the fast answer on my topic. Ich will try to clarify the points you mentioned.

  1. The reason of choosing DS in this scenario is, that the whole lesson is about SOA. And thats why the teacher wanted us to work with DS and AS. Our Univeristy is able to ceonnect to an SAP ERP Server in Munich, so we have the possibility to deploy our applications and services on the server.
  2. The mobile plattform will be Microsoft Windows Phone. I think Android would be easier but my fellow student with who I work wanted to work with WP
  3. Thats a good question, because we have the most problems with this topic. My fellow student wanted to work with visual Studio I think.. I don't know exactly. But a main Question to us is how we connect our app with the AS, and how will they work together!!??!
  4. I can't give u a straight answer to this question cause I dont know if its an ECC backend. I wrote an email to my teacher and as soon he answer me I will tell you. But let's assume that its an ECC backend
  5. Like I said before in Point 3, that is the topic with the most unanswered questions. Our work is about the following scenario.
    1. The app that we create is for outpatient social services. The employees should have the possibility to enter their worktime and some other usefull information. This information has to be send at the webservice, which should save the information in a database.
    2. The second functionality is that before the employee starts with the work, he has to login in the app. Then the app should connect to the databse to recieve the nesessary information the employee needs for the day. This functionality should also be implemented via the webservice.
  6. The idea of the emulator is a good thing!! I think should first try to work with this alternative.

I hope i could give your more informations about our project.

Regards, Domae

Former Member
0 Kudos

Hi Domae,

It looks like I made the assumption that DS stood for SAP Data Services, that's why I couldn't understand why you needed it. Then you started talking about SOA, so you are obviously referring to the Discovery Server right?

Having said that, it's still a bit confusing why you would need both DS and an SAP ERP AS. Depending on how you Discovery Server is setup, you should also have an ERP Virtual Machine (VM) on there.

I also haven't worked with Windows Phone mobile app development so I can't advise on the best approach there, you should probably try the SAP Mobile forums here on SCN for some guidance on that - there should be someone there that can advise.

I can offer some tips on additional questions you had:

- So you are probably looking at using an SAP ERP backend system with an HR module for time keeping.

- You could investigate exploring possible Standard SAP Enterprise Services you can use for this scenario from the SAP ES Workplace (you can just Google to find it). This would save time trying to develop something that probably already exists.

- Once you have established which Enterprise Service/s meet your requirement, you can then configure these as web service providers in your ERP backend. Then you would be able to get a WSDL out to use for your mobile app development.

- I worked with the Discovery a very long time ago so I'm not sure if it's now shipped with a SAP Sybase Unwired Platform (SUP) virtual machine as well. If it does have it then it could significantly reduce your development efforts. You could automatically generate your Windows Phone MBO (mobile business object - like a program shell) from your webservice/s that you have configured as a provider in your backend ERP. You would then just need to add some logic for what you want it to do.

- If you want to run your final mobile app outside your network (and you are not using any of the Sybase offerings) then you would enlist some help from an SAP Basis person. It would need to go through a reverse proxy (in the DMZ) with probably SSL authentication. So your app will use a different URL (endpoint) than the real one you configured in the ERP backend. Once the call reaches the reverse proxy and you mobile is authenticated correctly, the call will then be routed to the actual endpoint within your internal network.

HTH, Trevor

Former Member
0 Kudos

Hey Trevor,

thx again for the very good answers!!! With Netweaver DS, I mean the Developer Studio. The teacher wants us only to get use to the work with eclipse-based developerstudio from SAP. We don't have to create an complete HR application. The main focus should be the understanding how to create a webservice with Netweaver Developer studio 7.3 and to interact with an app (WP or Android) and a database. And for that we need some starting help.

P.S. My teacher answered my email. He said that its not an ECC Backend!

Regards

Domae

Former Member
0 Kudos

Hi Domae,

We normally use the 'affectionate' acronym NWDS (for the developer studio). I think you have probably narrowed down your options though...An Android mobile app is probably looking like the best option. You can use NWDS with a Droid Eclipse plug-in (I haven't tried adding the Droid plug-in to NWDS, only to standard Eclipse but I don't see why it shouldn't work with NWDS too) and run it through the emulator (or Droid device using USB cable) as a proof-of-concept all while connected to your network. You would generate a 'proxy' using the webservice WSDL & create your app within that. There are quite a few Android webservice examples & you could make it look pretty...

For external access you would you would need to consider the approach I suggested earlier.

The backend not being ECC shouldn't make much difference, the concept would remain the same. You would just expose a webservice, configure it & call it. If you use standard SAP service that already exists, half you work is done. You would just need to configure an endpoint for it. The logic would already exist in the backend to store the data you send from your app & would be stored in a database table/s which you would be able to access. All you need to demonstrate is an app call to a backend service developed using NWDS.

Regards, Trevor

Former Member
0 Kudos

Hey Trevor,

sorry for my false acronym of the Developer Studio. If I understood you right, you mean that I only have to develop my application via Droid sdk (with the Help of existing webservice examples)?

But where do I find the existing services from SAP? Are they included in the Aplication Server?

I will try to search some examples of apps which have the same functionality. Do you know if it is very complicated to implement the logic of a call from the app to the SAP backend server?

I wanted to say thanks again for your nice help!! You helped me very well!!

Regards, Domae

Former Member
0 Kudos

Hi Domae,

Dominik Espitalier wrote:

If I understood you right, you mean that I only have to develop my application via Droid sdk (with the Help of existing webservice examples)?

But where do I find the existing services from SAP? Are they included in the Aplication Server?

This is correct. SAP ships standard Enterprise Services (out-of-the-box) catering for all sorts of business processes. You first need to establish what Application Server you have access to. This will help you identify what services are available for your AS backend. Or if you already have access to this AS, you could just use transaction code SPROXY, this will list all the enterprise services available in your backend (it will be organized by namespace - under service interface node). You will just need to create/configure a webservice endpoint for any of these services (service providers) before you can use it (you will use transaction code SOAMANAGER - lots of examples here on SCN).

You could also learn more about the the use-case/s for the enterprise services that you have in your AS on the SAP ES Workplace website / portal (http://esworkplace.sap.com/socoview(bD1lbiZjPTAwMSZkPW1pbg==)/render.asp?sap-unique=100453&sap-param...)

For an easy Android example calling an SAP backend webservice, try this one:

http://stackoverflow.com/questions/9329715/how-can-i-invoke-sap-soap-webservices-from-android-with-u...

This example is using basic authentication (i.e. user + passwd), the authentication is determined by how you configure your endpoint in SOAMANAGER.

It's a pleasure helping out where I can. Hope this helps you and all the best!

Regards, Trevor

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi Dominik,

Can you provide a little more information on your scenario. This is a pretty big question.

Some points you could clarify:

- What was the reason for choosing/using DS in this scenario?

- On what platform would your mobile be designed for? e.g. iOS, Android or are you just trying to create and HTML based app?

- What would you be using to develop your mobile app, e.g. technology, SAP Sybase SUP..

- You AS 7.3, is that an ECC backend?

- How are you going to manage access from the mobile app to the AS? You need to consider an setup where your mobile app call would need to pass through a reverse proxy in a DMZ (demilitarized zone) for security reasons before it reaches the backend. You can't just expose the AS webservice directly to the internet.

- What would you want to expose as a webservice from the AS?

If you want to just develop a mobile app and demo it within your landscape you could consider using an "emulator" option using the Android SDK with an Eclipse IDE (you could do it directly through your Android device through a USB cable too (i.e. not using the Emulator). See a starting point here:

http://developer.android.com/training/basics/firstapp/index.html

With this approach you can avoid security concerns as you will be trying to call a webservice in your network and you avoid the Apple developer license and costs option.

Regards, Trevor