1. Why do I receive this error when I start a job?
"The Translation Provider Doesn't Support Translation for the Selected Language Pair."
The AEM Touch Connector is delivered with predefined language mappings between Smartling and AEM language codes. This error means that the AEM site language code does not match a Smartling language code. For example, an AEM site uses the code "fr" for French, but Smartling project uses "fr-FR" for French (France). To correct the problem, update the mapping and restart your job.
AEM site language code:
Incorrect mapping:
Smartling language code:
Correct mapping:
You can adjust language mappings in /apps/granite/translation/connector/config/smartling/languageMapping
. Generally, you should only need to edit this file when you add a new language in AEM.
2. Why does the popup not work when I try to submit a page?
When creating a Smartling configuration, make sure that you set the configuration for the page that is the parent to your sites (original and localized).
3. Why is the title not translated?
Although you may have submitted a page and translated all content, including the title of the page, ("jcr:title" property), you may notice that the title didn't translate properly. This is because the Smartling Touch Connector is responsible for submitting original content to Smartling, and it pulls translations back. However, applying translations to page properties is handled by AEM.
For example, you wish to translate three properties: title, description, and alias.
- Go to CRX DE and browse to the
/libs/msm/launches/rolloutconfigs/launch/contentUpdate
node. - Replace:
jcr:.*
with:
jcr:(?!(title|description)$).*
- Replace:
sling:(?!(resourceType|resourceSuperType)$).*
with:sling:(?!(resourceType|resourceSuperType|alias)$).*
- Save this configuration and resubmit the page. For more information, consult the AEM Touch Connector documentation.
4. Can I localize the page URL's?
Yes, as outlined here. You will need to add an alias for the pages and ensure that sling:alias
is added to the translation rules. You may also need to update some AEM settings as outlined in the answer above.
5. How do I apply tags to my translated content?
Tags are not applied on a target page by default. If you want to copy tags from the source page (original) to the target page (translated), you should add/change excluded property for `cq:tags`. For example, the appropriate value is:
cq:(?!(designPath|template|translationStatus|lastTranslationUpdate|tags)$).*
6. How do I exclude certain strings from a file?
When a single page is submitted, the Smartling connector may upload more than one file. This is a result of tags/dictionaries/assets being included. If you wish to exclude these types of strings from files such as these:
070b0946-9ca3-447b-8f2b-405553141cd0:ASSETMETADATA
f74a06e0-e211-4fc8-ab89-a757c43835e0:TAGMETADATA
ac2ddc50-2fa4-4cd1-b4c5-acc10ea02c4c:/apps/i18n/en.json
The type of translatable content and scope should be configured for the AEM translation framework.
Go to Tools > Cloud Configuration - Translation Configuration and adjust your settings.
For more details, consult Adobe AEM documentation.
7. Is there a configuration on the AEM customer side around the billions of User Groups that get created per AEM Translation Project?
We haven't seen such configuration. So, it is assumed creating groups is hard-coded or hidden.
8. Can they configure which users are added to the groups, and who has control over the AEM Translation Projects that are created?
You can configure that in AEM UI /security/groups.html or can open Project Summary tile and manage Users
9. Can the user groups be automatically deleted when the AEM Translation Project is completed (launches promoted & deleted)?
Groups can be automatically deleted by deleting a project. There are no other configuration found.
10. Is there a standard workflow, or a workflow the AEM customer can configure, to delete AEM Translation Projects that have been completed?
There is a built-in AEM feature to purge projects. It is a part of Maintenance. You must add a purge project task here, for example:
/libs/granite/operations/content/maintenanceWindow.html/conf/global/settings/granite/operations/maintenance/granite_weekly
- Click on Add and select Purge Project type
- Don't forget to configure them, click the checkmark
- You will be redirected to configuration console
11. If several files are sent to Smartling in one job, does the whole job need to be completed for the content to pull back into AEM?
AEM pulls translations back at the file level, it does not wait until all files in the job are published.
12. Why is the Test Connection for the Smartling Translator Provider failing?
Test Connection can fail for a number of reasons:
- Smartling - Context Preview Settings not configured: Test connection will fail if context is not configured correctly. Ask the client to check that the Server URL, User and password configured are all correct under: <aem-instance>/system/console/configMgr
- This is the most common cause for Test Connection failure and does not prevent content from being submitted for translation.
- Client firewall blocking traffic: Ensure api.smartling.com and cms.smartling.com (Port 443) are allowed by the client's network configuration.
- Incorrect API credentials: Test the client credentials using Smartling's API Authentication endpoint. Example cURL: curl -X POST https://api.smartling.com/auth-api/v2/authenticate -H 'content-type: application/json' -d '{"userIdentifier": "{USER_IDENTIFIER}", "userSecret": "{TOKEN_SECRET}"}'
13. Why is submitting an AEM page is failing because the URL is encoded?
This is a known issue in AEM, special characters in the URL are "double escaped" and cause a 404 error. Apache should be configured to allow encoded slashes in URLs: AllowEncodedSlashes On
For example:
<VirtualHost *:80>
ServerName www.geometrixx-outdoors.com
AllowEncodedSlashes On
<Directory />
<IfModule disp_apache2.c>
SetHandler dispatcher-handler
</IfModule>
Options FollowSymLinks
AllowOverride None
</Directory>
</VirtualHost>
14. Can custom placeholders be implemented through the connector?
Yes, this can be done in the Web Console Configuration (<aem-instance>/system/console/configMgr)
Search for Smartling - Translatable Content Configuration (Touch)
And add your regex:
15. I have specific sub-pages I want to submit for translation. Can I do a 'selected' submission with these pages or do I have to submit them all separately?
If you need specific sub-pages submitted, you will need to complete page submissions separately. There is no way to do a bulk submission for specific subpages.
16. I named my Experience Fragment a specific job name, but in Smartling it shows up as a page. How can I fix it?
Two ways:
- Submit the translation request via the 'Translate' button - not via the reference panel. The job should show up with the correct name then.
- Change the job name in Smartling as you would any other job
17. How does the AEM Forms translation process differ from the Sites / Fragments process?
In multiple ways, the main ones being:
- You request a translation via 'Add to Dictionary' option, not the Smartling connector button.
- You need to create separate locales under a different CRX DE location i.e. /libs/granite/ui/content/userproperties/preferences/form/items/language/items
- Translated content is returned to the same asset as a dictionary, not as a separate asset
18. How to include a Content Fragment for translation when submitting from a Sites page?
In CRX/DE, find the content fragment under the page tree and locate the sling:resourceType:
Go to the Translation Rules UI and click on /content, then under References, add the CF path, like so:
assetNode with resource type weretail/components/content/contentfragment referenced as fragmentPath
19. If AEM fails to approve and promote a translated page automatically, how can the client manually approve and promote the launch?
- Navigate to the Translation Project in AEM.
- Under Translation Job, click the 3 dots:
- This will show the pages/assets in the Job.
- Select the pages/assets and click Accept Translation:
- A modal window will pop up, click Accept:
- This will accept the translations, but the launch containing translations still needs to be promoted to the target page.
- Click the page/asset again and click Preview in Sites:
- Once the page opens, select Promote Launch from the middle menu:
- Select Promote full launch, you can also select Delete launch after promotion to delete the launch.
- Finally, on the Review step, click Promote.