Dynamic generation of url in SMTP service that points to the service detail in MWS monitoring

Whenever any IS service fails and that service is being audited,we generate a error mail that contains link to the service like this

https://hostname:8586/webm.apps.mon.integration.service.detail?wmp_tc=6407&wmp_rt=render&wmp6402.getDetails_getDetails_contextId=39f64e10-aa34-11e1-88c9-e66477b35b8d

we are storing the static part of url in environment variables and get just pass the context id while generating the url

static url =wmp_tc=6407&wmp_rt=render&wmp6402.getDetails_getDetails_contextId

The problem is here that the wmp_tc=6407 or wmp6402 can change due to version upgrade or any fix as well .How does MWS internally generates

the numbers 6407 or 6402?.seems to be some portlet unique numbers generated by MWS

what is the best way to generate the url like mentioned above with out worrying about the changed values for wmp_tc=6407&wmp_rt=render&wmp6402?

If that target portlet has an alias (or if you can add one) then you can use the alias in the url instead of that dbID in those parameter names.

For example:

I believe the “wmp_tc=6407&wmp_rt=render” parameters can be omitted.

and then the remaining static part of your url could be something like this:

wmpXYZ=portlet.abc&wmpXYZ.getDetails_getDetails_contextId=contextid_value_here

where “portlet.abc” should be replaced with the alias of the target portlet and “XYZ” can be any text of your choosing.

Hi Eric,

Thanks for your response.I have tried to do something on the similar lines which did not work out. not sure if my approach was right

But That is a inbuilt portlet for service detail

webm.apps.mon.integration.service.detail

I logged in sysadmin->Alias Management to see the portlet and properties to see if I can understand how it is generating numbers etc

Even if I create a alias,my url will point to the target portlet but I need it to point to the portlet with the service context id passed to that portlet as input in url parameters.

I could create something like

https://hostname:8596/webm.apps.mon.integration.service.detail which takes me to landing page of monitoring services

To pass the context id,I had to use the string like wmpXYZ.getDetails_getDetails_contextId which in this case makes XYZ number a necessity

webm.apps.mon.integration.service.detail is alias of the page, and 6402 is the id of the portlet on the page that needs the contextId parameter.

From looking at a local system, I’m assuming that the 6402 id corresponds to the portlet with this alias: webm.apps.mon.integration.service.detail.info

So the URL should be something like this:

https://hostname:8586/webm.apps.mon.integration.service.detail?wmpXYZ=webm.apps.mon.integration.service.detail.info&wmpXYZ.getDetails_getDetails_contextId=39f64e10-aa34-11e1-88c9-e66477b35b8d