URL Rewrite en el Web Dispatcher de SAP Netweaver 7.1

[xtrasgu.org]

Supongamos que necesitamos modificar las URLs de las peticiones que llegan a nuestro servidor SAP, por ejemplo, porque estamos migrando los servicios de un servidor SAP Business Connector a un servidor SAP PI, ¿es posible? Lo que queremos es que las peticiones que las aplicaciones cliente hacían al servidor SAP Business Connector a URLs del tipo:

http://servidor_bc:5555/invoke/Carpeta/Servicio

funcionen sin cambios al llamar a un servidor SAP PI que espera URLs del tipo:

http://servidor_pi:50000/sap/xi/adapter_plain?service=Servicio&interface=Interfaz&namespace=Namespace... 

Pues bien, si el servidor SAP PI está basado en SAP Netweaver 7.1 o superior, se puede configurar el SAP Web Dispatcher del servidor para que reescriba las URLs entrantes; veamos cómo.

Antes de nada, lo primero que hay que hacer es leer la documentación de SAP que explica el procedimiento. En concreto, lo que hay que leer es la explicación del parámetro “icm/HTTP/mod_” y el “Rewriting URLs”:

icm/HTTP/mod_<xx>

icm/HTTP/mod_<xx>
Rewriting URLs

Rewriting URLs

Lo primero que hay que hacer es añadir en el perfil de instancia de la RZ10 el parámetro que define dónde se guardará el archivo con las reglas para reescribir las URLs:

Transacción RZ10

Transacción RZ10

El fichero de reglas para el URL Rewrite es muy sencillo; utiliza expresiones regulares para decidir qué URLs tiene que sustituir, y por qué las tiene que sustituir. Como ejemplo de nuestro supuesto:

RegIRewriteUrl ^/invoke/Carpeta/Servicio[.*]  /sap/xi/adapter_plain?service=Servicio&interface=... [qsreplace]

Llegados a este punto, basta con reiniciar el servidor SAP para que coja los cambios, y ya debería de estar funcionando. Para ver si todo ha ido bien, podemos comprobar en la SMICM si el servidor está al tanto de las modificaciones:

SMICM Modification Handler

SMICM Modification Handler
SMICM Modification Rules

SMICM Modification Rules

Con lo que llevamos hecho hasta ahora, hemos conseguido que el Web Dispatcher de SAP reescriba las URLs que recibe de acuerdo a las reglas que le hemos dado, por lo que puede traducir llamadas dirigidas a SAP Business Connector de forma que las entienda SAP PI. Si quisiésemos que SAP PI escuchase en el mismo puerto en el que lo hace SAP Business Connector, lo podemos configurar en la SMICM:

SMICM New Service

SMICM New Service

Un Comentario sobre “URL Rewrite en el Web Dispatcher de SAP Netweaver 7.1”

  1. […] LiNUXero Blog Fotoblog Galería de Fotos « Twitter Semanal – 2012-03-04 URL Rewrite en el Web Dispatcher de SAP Netweaver 7.1 […]

Deja un Comentario