Release Notes / Version 10.2104
Table Of Contents
The Studio validation framework and all
Validator
implementations were moved from Studio Server Maven modules to Maven modules of the "shared/middle" workspace. This change is necessary for new functionality in the
Content Feeder
, which calls validators to index content issues (see release note CMS-18432). As part of this change, some classes, interfaces, and configuration properties were changed.
It's recommended to eventually move custom validator implementations to Maven modules that don't depend on Studio Server artifacts. If moved, custom implementations will be usable for the Content Feeder . This is however not strictly required for this update.
Configuration Property Changes:
Property "
studio.assets.settings-document
" has been replaced with "assets.settings-document
"Property "
studio.available-locales-content-path
" has been replaced with "available-locales.content-path
"Property "
studio.available-locales-property-path
" has been replaced with "available-locales.property-path
"Property "
studio.validators.navigation.ignore-path
" has been replaced with "validators.navigation.ignore-path
"Property "
studio.site-configuration-path
" has been replaced with "content.site-configuration-path
"Property "
studio.global-configuration-path
" has been replaced with "content.global-configuration-path
"
Mind that configuration properties support Spring Boot relaxed binding. A project might use a different syntax to configure these properties, which still needs to be replaced. For example, a camel-cased variant like "
studio.siteConfigurationPath
" must also be adapted.
Maven Dependency Changes:
The following Java packages were moved to different Maven modules. You have to adapt Maven dependencies accordingly for custom code that uses these packages:
com.coremedia.rest.validation
was moved fromcom.coremedia.cms:coremedia-rest-plugins
tocom.coremedia.cms:middle.coremedia-validation
com.coremedia.rest.validators
was moved fromcom.coremedia.ui:coremedia-rest-core
tocom.coremedia.cms:middle.coremedia-validation
com.coremedia.rest.cap.validation
was moved fromcom.coremedia.cms:cap-rest-plugins
tocom.coremedia.cms:middle.cap-validation
com.coremedia.rest.cap.validators
was moved fromcom.coremedia.ui:cap-rest-service
tocom.coremedia.cms:middle.cap-validation
com.coremedia.blueprint.base.rest.validators
was moved fromcom.coremedia.blueprint.base:bpbase-studio-rest
tocom.coremedia.blueprint.base:middle.bpbase-validators
com.coremedia.lc.studio.lib.validators
was moved fromcom.coremedia.blueprint:lc-studio-lib
tocom.coremedia.blueprint:lc-validators
com.coremedia.catalog.studio.lib.validators
was moved fromcom.coremedia.blueprint:catalog-studio-lib
tocom.coremedia.blueprint:catalog-validators
Blueprint Moved Directories:
Some Blueprint files and directories have been moved as consequence of moving validators from
apps/studio-server
to
shared/middle
. The exact file changes in the Blueprint are available in the Git repository and can be merged into project repositories in the usual way. Just to summarize, the following directories and files have been moved from
apps/studio-server/modules/extensions
to paths below
shared/middle/modules/extensions
.
am/am-studio-component/src/main/java/com/coremedia/blueprint/assets/studio/validation
am/am-studio-component/src/test/java/com/coremedia/blueprint/assets/studio/validation
am/am-studio-component/src/test/resources/com/coremedia/blueprint/assets/studio/validation
catalog/catalog-studio-lib/src/main/java
catalog/catalog-studio-lib/src/test
lc-asset/lc-asset-studio-lib-component/src/main/java/com/coremedia/livecontext/studio/asset/validators
lc-asset/lc-asset-studio-lib-component/src/test/java/com/coremedia/livecontext/studio/asset/validators
lc/lc-studio-lib/src/main/java/com/coremedia/lc/studio/lib/validators
lc/lc-studio-lib/src/main/java/com/coremedia/lc/studio/lib/LcStudioValidationConfiguration.java
lc/lc-studio-lib/src/main/java/com/coremedia/lc/studio/lib/LcStudioValidationLegacyConfiguration.java
lc/lc-studio-lib/src/main/java/com/coremedia/lc/studio/lib/LcStudioValidatorsConfiguration.java
lc/lc-studio-lib/src/test/java/com/coremedia/lc/studio/lib/validators
lc/lc-studio-lib/src/test/resources/com/coremedia/lc/studio/lib/validators
validators/validators-studio-lib/src/main/java/com/coremedia/blueprint/studio/rest/validation
validators/validators-studio-lib/src/main/resources/META-INF/coremedia
API Changes:
There were some changes in the public Java API for the configuration of validators:
com.coremedia.rest.cap.config.StudioConfigurationProperties.Validators.Navigation
was moved tocom.coremedia.blueprint.base.rest.validators.NavigationValidatorsConfigurationProperties
In class
com.coremedia.blueprint.base.rest.validators.IsPartOfNavigationValidator
, method#setStudioConfigurationProperties
was removed. Use#setIgnorePaths
instead.In class
com.coremedia.rest.cap.config.StudioConfigurationProperties
, the methods#getAvailableLocalesContentPath
,#setAvailableLocalesContentPath
,#getAvailableLocalesPropertyPath
, and#setAvailableLocalesPropertyPath
were removed. Use classcom.coremedia.rest.cap.validators.AvailableLocalesConfigurationProperties
instead.In class
com.coremedia.rest.cap.config.StudioConfigurationProperties
, the methods#getSiteConfigurationPath
,#setSiteConfigurationPath
,#getGlobalConfigurationPath
, and#setGlobalConfigurationPath
were removed. Use classcom.coremedia.cap.content.spring.ContentConfigurationProperties
instead.com.coremedia.rest.cap.config.StudioConfigurationProperties.Assets
has been removed. Use Blueprint classcom.coremedia.blueprint.assets.AssetManagementConfigurationProperties
instead.
The packages of the following classes were changed. These classes were already used in the Blueprint, and became now part of the public API:
Moved from package
com.coremedia.rest.cap.content.imagevariants
tocom.coremedia.rest.cap.validators
: ClassImageCropSizeValidator
Moved from package
com.coremedia.blueprint.base.pagegrid.rest
tocom.coremedia.blueprint.base.rest.validators
: ClassesConfigurableDeadLinkValidator
,PlacementsValidator
, andVisibilityValidator
Moved from package
com.coremedia.blueprint.base.rest.config
tocom.coremedia.blueprint.base.config
: InterfaceConfigurationService
and related classes
API Deprecations:
Deprecated
com.coremedia.rest.cap.validators.AvailableLocalesConfiguration
. Usecom.coremedia.rest.cap.validators.AvailableLocalesConfigurationProperties
instead, a Spring ConfigurationProperties class holding the same values.In
com.coremedia.rest.cap.validators.AvailableLocalesValidator
, deprecated method#setConfiguration
and the no-arg constructor. Use two-arguments constructor instead.In
com.coremedia.rest.cap.CapRestServiceBaseConfiguration
, deprecated method#availableLocalesConfiguration
.
Predefined Validators:
The following validators are not predefined by the Studio core anymore. They are still predefined in the Blueprint "
validators
" extension in
com.coremedia.cms.middle.blueprint.validators.ValidatorsConfiguration
, so there is no change for most projects:
com.coremedia.rest.cap.validators.AvailableLocalesValidator
com.coremedia.rest.cap.validators.SiteManagerGroupValidator
com.coremedia.rest.cap.validators.DeadLinkValidator
Only projects that are not based on the Blueprint, or that have disabled the "
validators
" extension, will have to re-enable these validators, if they are needed. They can be configured as Spring beans in the application context in the same way as in the Blueprint class
ValidatorsConfiguration
.
(CMS-18431)