There could be multiple causes for this problem. In this article, we focus on one known cause, where the sling-i18n service user's ACLs are deleted. This usually happens when an ACL package is installed from another environment.
Check if the service user sling-i18n has read access on the root node /
- Go to http://host:port/crx/explorer/index.jsp
- Log in as admin
- Open Content Explorer
- Click on the root node - /
- In the top navigation, select Security => Access Control Editor (the Security button is a picture of a safe)
- Check if the sling-i18n user has read access granted. If not then follow the steps below.
Fix the service user ACLs:
- Install ACS Commons if it isn't already installed. You will need to use the ACS Commons ACL Packager.
- Use the ACL Packager to create a back up package of all ACL's from corrupted environment. Before building the package, edit it's configuration, go to the Advanced tab and set AC Handling to Merge mode.
- Install a fresh AEM instance with all the same patches (service packs, hotfixes, etc.).
- Create a package with merge mode of the ACL's from the fresh instance.
- Build the package with merge mode as well.
- Download the package.
- Install it to broken environment.Reinstall the ACL package from step 1.
- Reinstalling the package reorders the custom ACLs to the end of the list ensuring that custom ACLs aren't overridden by out of the box ones.
Once The ACL has been resolved, one final step is required.
- Go to /system/console/bundles, and restart the "Apache Sling Internationalization Support" bundle