Release Notes / Version 13.2512.0
Table Of ContentsCORBA Timeout For Recursive Copy Operations Has Been Increased
The client-side CORBA timeout for recursive copy operations (e.g. during deriving of a site) has been increased to 12 hours.
It is not necessary anymore to increase the global CORBA timeout for
this with the system property
com.sun.corba.ee.transport.ORBWaitForResponseTimeout.
To change the default, use the environment property
COM_COREMEDIA_CORBA_COPY_RECURSIVELY_TIMEOUT_MILLIS.
(CMS-29871)
Native Personalization Variants: Stable Properties Ignored for XLIFF Export
Stable properties in native personalization variants are not mean to be updated via translation processes. The XLIFF exporter got adapted to acknowledge this restriction and skips exporting stable properties for native personalization variants. This does not apply to normal/baseline contents. Thus, translatable properties that are also marked as stable will be included for XLIFF export for baseline contents as normal.
Testing Convenience: For tests
based on XmlUapiConfig and its provided default
schema a new intermediate content-type
SimpleVariant got introduced as child of
SimpleExtendedAll and parent of
SimpleSiteContent. This type and its properties may
be used for unit testing purpose for personalization variant aware
API.
(CMS-29767)
Multi-Site Manager Group Resolution for Translation Workflows
A new workflow action
GetMultiSiteManagerGroupAction is now available for
translation workflows that target multiple derived sites in a single
workflow run.
Background
The existing GetSiteManagerGroupAction resolves
site manager groups for a single target site only. Translation
workflows that operate on multiple target sites simultaneously — such
as the GlobalLink translation workflow — could not use this action
because it does not accept an aggregated (list) site id input
variable. This forced such workflows to rely on broad permission
groups (e.g., translation-manager-role) rather than
site-specific manager groups for task authorization.
What's New
GetMultiSiteManagerGroupAction resolves site
manager groups for one or multiple
target sites and stores them into a workflow process variable. It
accepts both atomic String and aggregated
StringList site id input variables.
When multiple target sites are specified, the groups from each site are combined using a configurable merge strategy:
| Strategy | Behavior | Default |
|---|---|---|
INTERSECTION
| Retains only groups common to all target sites (directly assigned only) | Yes |
UNION
| Combines all groups from all target sites | No |
COMMON_ANCESTOR
| Walks the group hierarchy to find the lowest shared parent groups (transitive membership, LCA pruning) | No |
The default INTERSECTION strategy ensures that no
unintentional permission broadening occurs for multi-site workflows.
Fallback Groups
An optional fallbackGroups attribute allows
specifying a comma-separated list of group names that are applied when
the merge result is empty. This is useful for workflows that need a
guaranteed fallback group (e.g.,
translation-manager-role) when target sites have
disjoint manager groups.
If no groups can be resolved — neither from the merge nor from the
fallback — the action returns UNSUCCESSFUL.
Configuration Attributes
| Attribute | Required | Default | Description |
|---|---|---|---|
siteVariable
| Yes | — | Process variable with target site id(s) |
siteManagerGroupVariable
| Yes | — | Process variable to store resolved group(s) |
mergeStrategy
| No |
INTERSECTION
| Strategy for combining groups from multiple sites |
fallbackGroups
| No | — | Comma-separated fallback group names |
fallbackGroupsDelimitingRegex
| No |
,\s*
| Regex to split fallback groups string |
Example Usage
<AggregationVariable name="targetSiteId" type="String"/>
<AggregationVariable name="targetSiteManagerGroup" type="Group"/>
...
<AutomatedTask name="GetTargetSiteManagerGroups"
successor="FollowUpAction">
<Action class="com.coremedia.translate.workflow.GetMultiSiteManagerGroupAction"
siteVariable="targetSiteId"
siteManagerGroupVariable="targetSiteManagerGroup"
mergeStrategy="INTERSECTION"
fallbackGroups="translation-manager-role"/>
</AutomatedTask>
Single-Site Backward Compatibility
When used with a single target site,
GetMultiSiteManagerGroupAction behaves equivalently
to the existing GetSiteManagerGroupAction. This
makes it a drop-in replacement for workflows that want to adopt the
new action incrementally.
Migration Guidance
Existing workflows using
GetSiteManagerGroupActioncontinue to work without changes. No migration is required.New workflows targeting multiple sites should use
GetMultiSiteManagerGroupActionwith the appropriate merge strategy.
(CMS-27189)
External Users' Home Folders
When the result of
com.coremedia.ldap.LdapUserProvider#getHomeFolder
changed for an already known user due to changes in the backend
(LDAP), the user got a new empty home folder in the CMS. Moreover, the
API documentation of LdapUserProvider#getHomeFolder
erroneously claimed that it "is effective only once per
user", which contradicted the actual behaviour. Now, the existing
home folder is moved to the new location in that case, and the API
documentation has been corrected accordingly.
(CMS-27155)


