ICF: Default service not executed
[default] [default user] [executed] [parse] [service] [SICF] [URL] [women executed]
Symptom
The system does not execute the default service that you maintained in transaction SICF. The response that the system issues is “Service can not be reached – 404 not found”.
If you call transaction SICF, choose “Parse URL”, and enter “/” as the URL, the system issues the following error message: “No relevant service found” even though you maintained a default service.
Other terms
SICF, default service, parse URL
Reason and Prerequisites
Reason:
——–
This problem is caused by a program error. The SICF cache is constructed incorrectly.
Prerequisites:
—————-
This error occurs only if the ICF caches are active.
(kernel parameter icf/shared_memory_cache_off is set to 0, 1, or 2)
Solution
Workaround:
———–
Deactivate the buffer in the ICF completely:
-> Call transaction RZ11: Set the kernel parameter icf/shared_memory_cache_off to 3. Do not forget to set the parameter in the profile as well (transaction RZ10). If you do not do this, the change is lost the next time you start the system and the problem occurs again.
Perform the following steps to delete all existing ICF caches:
-> Call transaction SE37: Execute the following function module: “ICFBUFFER_INIT”.
(Caution: The system executes the function module and deletes the cache only if it displays “Runtime:
Deactivating the ICF cache may cause performance to deteriorate when you execute ICF services.
Error correction:
—————
Import the current ABAP Support Package.
If you want to implement the attached correction instructions, you must enhance the table/structure SHMSERVICE manually.
We recommend that you use the workaround or that you import the relevant SAP_BASIS Support Package.
————————————————————————
|Manual Pre-Implement. |
————————————————————————
|VALID FOR |
|Software Component SAP_BASIS SAP Basis compo…|
| Release 700 SAPKB70018 – SAPKB70018 |
————————————————————————
You must add the field ICF_REDIR to the end of the database table/structure SHMSERVICE.
Call transaction SE80 and enter the package SHTTP. In the object SHTTP, choose “Dictionary Objects -> Database Table” and select SHMSERVICE.
Attach the field ICF_REDIR with the following attributes to the structure:
Field: ICF_REDIR
Key: NO
Initial Values: NO
Data element: ICFCHAR255
Data Type: CHAR
Length: 255
Decimal Places: 0
Short description: Character String Length 255.
Save the changes to the structure.
Cross check:
Check whether the field ICF_REDIR that you just created has the same attributes as the same field ICF_REDIR in the table ICFSERVICE.
Activate the change.
————————————————————————
|Manual Post-Implement. |
————————————————————————
|VALID FOR |
|Software Component SAP_BASIS SAP Basis compo…|
| Release 700 SAPKB70018 – SAPKB70018 |
————————————————————————
Caution: You have to perform this manual post-implementation step manually and separately in each systemafteryou have imported the Note to implement.
After you have enhanced the structure SHMSERVICE and implemented the correction instructions, you must reset all of the ICF caches.
Call transaction SE37. Enter the following function module: “ICFBUFFER_INIT”.
Choose “Test/Execute” (F8).
Choose “Execute” again (F8).
The system should display “Runtime:
The ICF caches have been reset.