cancel
Showing results for 
Search instead for 
Did you mean: 

Custom ICM SHTML pages not working

Former Member
0 Kudos

I can't get custom ICM SHTML error pages to work on my ECC server. What I am hoping to do is to get the the users who timeout after 40 minutes to get a certain page (ICMERR-ENOSESSION.shtml) and every other error should be redirected to an enhanced error capturing page (ICMERR-EDEFAULT.shtml) .  Well thru trial and error I found that I can get them to go to a custom HTML page w/o error, but not a  custom SHTML page.  If I redirect them to an SHTML page they are instead redirected to the standard SAP error handling pages.  It's like I am missing an 'allow SHTML pages' setting or something, but from what I've read no such option exists.

I am using this page for reference

Error Codes (SAP Library - SAP Web Dispatcher)

Any help/feedback would be appreciated.  Thanks

Accepted Solutions (1)

Accepted Solutions (1)

0 Kudos

Hi Steve,

What have you done so far? Profile parameters? Other configurations?

How do the error pages currently look like? You mentioned that custom HTML works, but SHTML will lead to a standard SAP error page. How does the latter look like (screenshot or copy&paste)?

Regards,

Tobias

Former Member
0 Kudos

Thanks for the reply Tobias. 

The only parameter that I have created/changed is icm/HTTP/error_templ_path.  I know that part is working beacuse I am able to pull the custom HTML pages (pages ending in HTML), just not ones ending in an SHTML extension.  If I take an SHTML error file (ICMERR-EDEFAULT.shtml) and rename it to an HTML file (ICMERR-EDEFAULT.html) it works fine. I want to harness the power of dynamic HTML to capture ceratin user infomation if I can by using SHTML pages. I want to be able to use pages like this > https://help.sap.com/saphelp_nw04/helpdata/en/18/2a7c7eedb1c74b8ee0bfa8dfdc3778/content.htm

Attached you will find the 400 session timeout page that I get after timeout as well as the custom redirect page that works fine as an HTML page but not when I make it have an SHTML extension

Default >

Custom >

Former Member
0 Kudos

In case you are not aware of it the static one is used if one exists. If one doesn't exist the dynamic one is used. If a dynamic one doesn't exist, the default one is used. Whenever you make changes to the error pages, a ICM restart is required.

0 Kudos

Very good point from Samuli: ICM or Web Dispatcher needs to be restarted whenever custom error files are added or removed. Modifying the content of a custom error file however does not require a restart.

If you still have troubles, increase the trace level to 2 before triggering the error for the first time, then check dev_icm or dev_webdisp for lines similar to these:

   HttpPlugInWriteErrorText: check for error templates in "."

   HttpPlugInWriteErrorText: use template "./ICMERR-EPERM.shtml"

Former Member
0 Kudos

In case anyone is curious the reason my custom error pages were not working were because I had not restarted ICM on my ECC system.  After doing this my custom error pages worked without issue.  The trace options in SMGW were very helpful in troubleshooting this (see below)

Answers (0)