Skip to Content
Product Information

SAP BI 4.2 SP05 : Decoupling of BI Platform RESTful web services from WACS

1.Introduction to SAP BI Platform RESTful web services:

The SAP Business Intelligence platform RESTful web service SDK lets you access the BI platform using the HTTP protocol. You can use this SDK to log on to the BI platform, navigate the BI platform repository, access resources, and perform basic resource scheduling. Both XML and JSON request and response formats are supported.

This Blog explains the RESTful web services can also be supported on Tomcat application server.

2.Decoupling of BI Platform RESTful web services from WACS:

Currently, Rest SDK runs as service in WACS and can be deployed only on WACS server. Need to make RestSDK run as independent service which should be scalable and should run on Tomcat server.

As user I should be able to run this on latest Tomcat server (Tomcat version 8.5.7 and 9 both) being supported for SP05.

From BI 4.2 SP05 onwards, SAP BI platform architecture now supports both the WACS server and the Tomcat server for configuring and using RESTful Web service APIs.

By Default RESTful web services will be deployed in the BI 4.2 SP05 full build and patch build.

RESTful web services will continue to run on WACS as well.

Customers will have option to point the REST URL either to WACS or Tomcat. This ensures backward compatibility.

3.How to configure the RESTful web services on Tomcat URL:

In default installations of the BI platform, the base URL is defined as http://<servername>:6405/biprws

  1. Log on to the Central Management Console (CMC) as an administrator.
  2. In the CMC, click Applications.

A list of applications are displayed.

  1. Right-click  RESTful Web ServiceProperties .

The Properties dialog box appears.

  1. In the Access URL text box, type the name of the base URL for RESTful web services.

For example, type http://<servername>:<portnumber>/biprws.

Replace the Restful Web services URL port from 6405 to 8080. Ie., WACS server port to Tomcat Application server port.

(if the Tomcat Application server is running on 8080 port)

4. How to set the RESTful Web services parameter values as part of server configuration:

 

If you are using a non-WACS server such as Tomcat, you can set the RESTful Web service parameter values as part of server configuration.

To configure the RESTful web services for Apache Tomcat application server, follow the procedure given below:

  1. Stop the Tomcat server.
  2. Access the file propertiesin the following file-path: <tomcat-location>\webapps\biprws\WEB-INF\config\custom.
  3. Specify the values of following parameters in the file based on your custom requirements and save the file.
    1. <Default_Number_Of_Objects_On_One_Page>
    2. <Enterprise_Session_Token_Timeout_In_Minutes>
    3. <Session_Pool_Size>
    4. <Session_Pool_Timeout_In_Minutes>
  4. Restart the Tomcat server.

Note: The default version of biprws.properties is available at <tomcat-location>\webapps\biprws\WEB-INF\config\default and your configuration for above listed parameters in custom file path overrides the default settings once you restart the server.

 

 

28 Comments
You must be Logged on to comment or reply to a post.
  • Hi Ashok,

    Great share!

    Just one small question.

    Does this change mean we don’t need to make sure WACS is running and enabled if we want to use BI Admin’s Cockpit and other applications that need RESTFUL Web services from BI 4.2 SP5?

    Regards,
    Ivan

    • Hi Ivan,

      Thanks for your feedback.

      Yes. Once the RESTful web services URL is updated with the Tomcat server and Port. All Applications will be automatically use the Tomcat one including BI Admin cockpit.

      Thanks,
      Ashok R

       

       

  • hi Ashok,

    two questions :

    • the restful service in WACS must be remove after this ‘split’?
    • biprws is a new application, include in war files ? deploy is automatic or manual ?

    thanks

    regards

    phil

    • Hi Philippe,

      Thanks for your questions.

      1. Biprws can be deployed through wdeploy with split configuration.

      Just that the content won’t be split because it is not necessary.

      2. deployment will be same and there is no difference. it comes automatically when we install the product.

       

      Thanks,
      Ashok R

       

       

  • Hi Ashok,

    This does not work for us.

    When I try to launch WEBI using FIORI Launchpad, I get below error.

    it works well if I use RWS deployed on WACS server.

    Also, can you please guide more about the values which should be added for below parameters :

    1. <Default_Number_Of_Objects_On_One_Page>
    2. <Enterprise_Session_Token_Timeout_In_Minutes>
    3. <Session_Pool_Size>
    4. <Session_Pool_Timeout_In_Minutes>

    Regards,

    Aakash Gupta

  • Thanks Ashok for the great blog, I need your help, we decoupled Webservices from WACS and using tomcat as you described, now im trying to expose new “BILaunchpad” url to internet through proxy (apache) , I couldn’t find any document about it, I tried doing it by exposing “/biprws”, however no luck. I already have /BOE/BI and /BOE/CMC links working fine externally, i did similar config for “/biprws” as “/BOE”  in apache config file.

     

  • In a distributed environment where the Tomcat web application node is in the DMZ and the processing and management nodes are inside the LAN, what servers should be installed on the web application node inside of the DMZ? The RESTful service? Or can this service be installed inside the lan?

    • The RESTful service is installed on the web application node, so needs to be accessible to the users.  It connects back to the processing/management servers in the DMZ

      • Hi Hayden, I did get this resolved by:

        1. Installing the RESTful services and WACS inside the LAN
        2. Uninstalling all components from the web application tier besides Tomcat.
        3. Now, the only thing running on the web application node is Tomcat, and no BI Platform servers.

         

  • Is It planned to support other WAS than tomcat? We are running netweaver 7.5 And we would like to use webdispatcher to load balance restful webservices due HA And performance reasons.

    • Hi Romulo,

       

      Thanks for your question. yes we are planning incrementally to support all other WAS. we are planning for websphere first and later NW.

       

      Regards,

      Ashok R

  • Hi Ashok

     

    Thanks for this great post. Can you speak to load balancing the REST service on tomcat in a multi-clustered environment? Also, does the biprws webapp use PlatformServices.proprties for clustering information or is there further configuration required?

     

    Thanks in advance,

    Sean.

  • Hello,

    what happens if your tomcat is behind a proxy that says “send everything to tomcat on port 8080” ?

    And if after that tomcat redirects 8080 to 8443 ?

    For me, cockpit doesn’t work anymore if you access BO via the proxy (as it should be)…

    Regards