Release Notes / Version 11.2310
Table Of Contents
SitesService#deriveSite had an issue, that it may
fail returning the derived site, if the provided
targetSiteId is null. As a
result, it returned null in these cases and worse:
The derived site was invalid as it had no site ID set.
With this change, we apply the same default as already used by the derive-site workflow, thus, to create a random site ID on demand.
We also changed the contract of
SitesService#deriveSite, so that it does not return
null anymore. While it is now always non-null, we
skipped adding method contract @NonNull, as this
may have triggered your static code analysis.
Subtle Breaking Changes
As stated, the behavior of deriveSite changed a
little, creating a random site ID, if required. This does not affect
any of the code that ships with CoreMedia Blueprint, but your code may
rely on the old unset site ID behavior.
Also, the non-null contract (as stated, not declared explicitly) is
now enforced in SiteService#deriveSite. If, for any
reason, the site cannot be found after deriving it, it will now fail
with a NullPointerException and a clear message,
what site failed to be created.
(CMS-23139)


