Skip to Content

JAVA vs XS rest services(odata) on HANA Cloud Platform?

Hi everyone,

I will start to develop hana cloud appliciation. I want to keep backend safe and fast. I thought that we can handle data management with rest services. Application can be executed on web, native-mobile, sap gui or windows. Therefore, backend should be common for all platforms.

I did some research about rest architecture on HANA Cloud Platform. I can use rest services via XS or Java. Which method is better or what are the major advantages or disadvantages for Java VS XS rest services?

Add comment
10|10000 characters needed characters exceeded

2 Answers

  • Best Answer
    Posted on Feb 21, 2017 at 11:55 AM


    First, welcome to the platform :) Both languages are going to be supported for your server side language. The next question would be whether or not you are familiar with the XS language (server side JavaScript) and also whether or not you are going to be ready for the XS Advanced Architecture which will allow you to write NodeJS code rather than XSJS (which will eventually be deprecated) . If you are thinking of going to the advanced architecture, you should consider NodeJS (there are a lot more things to consider but I will focus on your language question here).

    Advantages of XS: Closer integration with the HANA DB. There are XSJS (and NodeJS) libraries which you could use to interact directly with database tables as entities (XSDS), outbound connectivity (http calls outside HANA), there are XS Jobs (similar to Chron Jobs), there are many more features.

    Advantages of Java: Well established language which is widely used and platform independent. It is an OOP language that has more libraries and classes, etc.

    One thing I came across when working with the HCP and the File Repositories is that you can interact with it with Java and not with the XS language. I wish there was a way for XS or client side JS to be able to interact with it.

    I think there may be a lot more pros/cons for each one, however, I think you should look ahead and see what language(s) you will want to support going forward. hope this helps!

    Add comment
    10|10000 characters needed characters exceeded

    • Hi Sergio,

      Firstly, thanks for your answer. Actually I try to decide which language can be better for advanced processes. I can handle both language for now. HANA and Cloud Platform can be thought as a new product so some features are still developing and also will be developed continuously. The application maintanance is important because as a developer or partner, we will also update and improve our products based on HANA cloud. Therefore, stability and development processes plays a big role in that cycle. I am sure that eventually lots of features will be added to HANA cloud platform for JAVA and XSJS. However, which of them will be stable and supported more effectively with tools, libraries or SDKs?

      Shortly, your answer helps me to understand and evaluate some perspectives on JAVA and XSJS. If you have more comments about XSJS vs JAVA restful services management, I will be happy to see much more details and effects on XS and JAVA during development and support.

  • Posted on Feb 21, 2017 at 03:19 PM

    if you will plan on long term maintenance, then you should focus on Java vs NodeJS (as i mentioend earlier XSJS will be deprecated within a few releases)

    Add comment
    10|10000 characters needed characters exceeded