cancel
Showing results for 
Search instead for 
Did you mean: 

Is it possible to modify the URL in Web Dispatcher?

Tamas_Hoznek
Product and Topic Expert
Product and Topic Expert
1,886

I have the following situation: In Fiori Launchpad running on a gateway instance, I have two tiles which are supposed to reach two different ABAP backend systems. Let's call them AAA and BBB.

The SICF service I want to access has the exact same path in both systems. For example /sap/bc/test

I'm using the Web Dispatcher which is currently set up for the two systems. I can reach both of them fine. The WD is configured to use wdisp/system_conflict_resolution=FIRST_MATCH. Due to the two backend paths being the same, I cannot define my dispatching rules based on them alone.

I need a simple method to set up the Launchpad tiles, so that it's easy to specify in Launchpad configuration which backend system they should access. I have a way to insert a path prefix when setting up my tiles, so the resulting URLs become:

https://host1:port1/AAA/sap/bc/test

https://host2:port2/BBB/sap/bc/test

This would be OK, however those URLs are not understood by the backend systems, due to the prefixes (AAA and BBB).

Is there a way to configure the Web Dispatcher to strip those prefixes, so the actual URLs become like

https://host1:port1/sap/bc/test and https://host2:port2/sap/bc/test when accessing the backend instances?

Or is there a better way to do this? I know I could probably define external aliases on each backend system for the common SICF path and use those in WD routing, but I don't want to set those up in each backend. Instead, I want to use only the Launchpad setup to determine the target.

Thanks a lot for any idea or advice.

View Entire Topic
Isaías
Product and Topic Expert
Product and Topic Expert

Hello Tamas,

I believe that you have two options that are much easier.

  1. Open two ports at the Web Dispatcher and use the SRCSRV argument of the wdisp/system_X parameter to direct the requests to each backend based on the port number.
    At the Fiori, configure the respective SM59 HTTP destinations to use the port related to the backend system involved;
  2. Instead of using multiple ports (might cause some issues with Internet Explorer), use virtual hostnames, like "aaa.exemple.com" and "bbb.exemple.com".
    Both can be DNS aliases and both must point to the Web Dispatcher server.
    Then, use SRCVHOST at the wdisp/system_X parameter.

This wiki page has more information about the system selection criteria.

Regards,

Isaías