2.2.3. Release 7.5.43

This chapter contains all changes made in Release 7.5.43 of CoreMedia Digital Experience Platform 8.

[Note]Note

Highlights in this Release

  • Image Editor Update: Site-specific crops introduced, various bugfixes and stability improvements,

  • Image Editor Update: Read support for JPEG images using the CMYK color model

  • Translation Workflow Improvement: added "In Translation" state with new Dashboard widget and warning

  • LiveContext: Updated Freemarker version

  • LiveContext: new asDefaultFragment View - Categories and Articles can easily be added as teasers into placements

  • LiveContext: Fragment Highlighting mode in Studio for Commerce rendered pages (CMS-6134)

  • LiveContext: New B2B Demo Content and Preview Personas in Default Content

  • The tomcat dependencies have been updated to 7.0.70 (due to CVE-2016-3092)

  • Various bugfixes and improvements

Follow the CoreMedia DXP 8 Help Center section to receive release and product announcements automatically.

Modules and Tooling

Release 7.5.43 contains the following CoreMedia modules:

  • CoreMedia Blueprint

  • CoreMedia CMS

  • CoreMedia Studio

  • CoreMedia Elastic Social

In addition, CoreMedia DXP 8 uses the following tooling:

ProductKeyVersion
CoreMedia Application Maven Plug-inAPPPLUGIN2.7.9
CoreMedia Project Maven ExtensionPROJEXT1.0.5

Table 2.3. Tooling of CoreMedia DXP 8


CoreMedia CMS Changes and Improvements

  • Freemarker 2.3.25-incubating

    (CMS-6190)
  • Together with the new image editor, the site specific image variants have been enabled by default. This means that the CAE and the Studio reading all variants information like the minimum width and height or the preview width from the settings documents 'Responsive Image Settings' that must be available for every site. In addition, a global fallback setting exists that contains all variants of all sites.

    Since each image variant has it's own preview width/height setting now, the previously introduced setting "maxPreviewImageWidth" has been removed.

    (CMS-6036)
  • Improved logging in Content Feeder and CAE Feeder when Apache Tika is used to extract text from binary formats. Warnings from Apache Tika or parser libraries such as PDFBox are now logged with additional information about the source content.

    (CMS-5981)
  • The translation overview dashboard widget and the translation library filter now distinguishes content that is currently in translation. When searching for new or updated content to translate, such content is not included, reducing the risk of duplicate translation workflows.

    In addition, an API method isInTranslation was added to com.coremedia.cap.multisite.ContentObjectSiteAspect.

    Migration

    As workflow definitions changes as well as database schema and user permissions you need to perform some migration steps:

    • Translation Workflow: You need to upload the updated translation.xml to your workflow server, because the RollbackTranslationAction was changed to correctly track "in translation" states.

    • Workflowconverter: You should also run cm workflowconverter -c in order to update the definition of running translation processes.

    • Spring Configuration: In the project workspace, a Spring bean for cleaning up in-translation states after aborted workflows has been added to the workflowserver-blueprint-component.

    • User Rights: The group translation-workflow-robots needs additional permissions:

      • Approve (A) on /Sites for content type Document_ and

      • Approve (A) on /Sites for content type Folder_

    • Database Update: A database schema update to the content server is automatically applied.

    (CMS-5799)
  • Introduced a new asDefaultFragment view that is used instead of the default view for any placements that do not render a full page but a fragment only (e.g. in main, tab, header, footer, etc.). This enables editors to also directly place e.g. Augmented Categories or Articles in a pagegrid without rendering them in full length but as teaser, only. Demo Layouts for Commerce Composer and Header.jsp as well as Footer.jsp in WCS workspace have been adapted accordingly.

    (CMS-5781)
  • Image transformations now support JPEG source images that use the CMYK color model.

    CMYK images are converted to sRGB before further processing. The conversion utilizes a ICC color profile in order to map the CMYK colors to the sRGB color space as accurate as possible.

    When there is a suitable color profile embedded within the source image, that color profile is used for conversion. It his highly recommended to save a CMYK JPEG image with an embedded color profile before uploading it into the CMS.

    If there is no embedded color profile, conversion falls back to a platform specific "generic" CMYK color profile. If the resulting colors are not acceptable, there is the possibility to specify your own ICC color profile used for conversion. All that is needed is to put a properties file "com/twelvemonkeys/imageio/color/icc_profiles.properties" into the classpath and define the key "GENERIC_CMYK" with the path to your profile, e.g.

    GENERIC_CMYK=/usr/share/color/icc/MyGenericCMYKProfile.icc

    Writing CMYK images is not supported. Moreover, writing image metadata is not supported for images originating from CMYK source images. Any metadata is removed before writing the image, as if the removeMetadata (rm) operation has been applied. This is done in the Blueprint CAE anyway in order to generate small and compact images.

    (CMS-5685)
  • Added JVM option -XX:OnOutOfMemoryError='kill -9 %p' for Tomcat under Linux, so that the JVM terminates immediately when an OutOfMemoryError occurs.

    (CMS-4634)

CoreMedia Studio Changes and Improvements

  • A new feature has been implemented to visualize the placements delivered from CoreMedia CMS on Shop pages from a Commerce System. For more information read the Studio User Manual.

    (CMS-6134)
  • When starting a translation workflow, a warning is shown for content that is already in translation. In the translation detail view, a warning is shown for content that is the target of multiple translation workflows at the same time. Overlapping translation workflows should be avoided because the master version to be translated cannot be determined properly.

    (CMS-6009)
  • The Image Editor has been updated to a new version. There are a few changes in usability, but mainly it has been made much more robust.

    The new Image Editor must be configured in Studio image document forms as an ImageEditorPropertyField. The configuration options can be found in the CoreMedia Studio Manual Chapter Document Type Model Section Image Cropping and Image Transformation.

    The Image Editor now uses the variants (a.k.a. crops) which are defined via configuration and not through the image document form.

    Various issues with the Image Editor have been solved by this update. Some fix highlights include:

    • The old Image Editor sometimes miscalculated crop ratios. This led to an automatic content check-out when the user opened the image with Studio. In the new Image Editor the crops are correctly calculated, but these changes are not saved until the content is checked-out by the user. This solves both the problem with crop miscalculation and with automatic check-out of images.

    • Image Cropping validation issues: in the new Image Editor, the "crops are too small" validation now takes place on the server, so that violations appear as content warnings.

    • Reverting an image preserves the format of previous image: has now been resolved.

    • Undo history in the Image Editor is no longer truncated, but shows the entire undo history list.

    (CMS-5990)
  • Removed "livecontext.catalog.root content" Struct Settings from example content as it is not required. These settings are not used by the implementation and only cause confusion. The catalog root is only determined via external reference to the virtual "ROOT" category. For your convenience, simply use the "augment category" action on the "Product Catalog" node in the e-Commerce-part of the library.

    (CMS-5903)
  • A confirmation dialog has been introduced when renaming a non-empty folder, because this has implications for all content below that folder, and may lead to expensive recomputations on the web site or in the search engine. A similar dialog was already implemented for folder move operations.

    (CMS-5788)
  • In the new Image Editor, previews for slider values are never shown before the sliding is complete.

    (CMS-3656)
  • When a translation task is accepted, changes to non-translatable properties in the master content are now applied to the derived content automatically if possible without conflicts. This helps to keep binary and structural data in sync between sites, such as images, crops, settings, and the navigation hierarchy, and complements the XLIFF-based update of translatable properties. When a translation task is rejected, all changes to the derived contents are reverted, including automatic changes applied by the workflow. This feature requires an updated translation workflow definition translation.xml which should be uploaded to the workflow server. Due to changes to the workflow action classes, existing translation workflows should be completed before upgrading. If you still have running translation workflows after upgrading the Studio, please run the workflowconverter (see section Workflowconverter in CoreMedia Workflow Manual) in order to be able to finish the open workflows.

    (CMS-3634)
  • Image Editor: clicking on "undo" dropdown always undoes last transformation: fixed with the new Image Editor.

    (CMS-2648)

CoreMedia Blueprint Changes and Improvements

  • The tomcat dependencies have been updated to 7.0.70

    (CMS-5937)

CoreMedia Elastic Social Changes and Improvements

  • Previously, the modification date of a CommunityUser was defined to only reflect changes in the moderation. As a property with this name is often used in a different way, the property is updated now whenever a user is saved including user-made changes.

    (CMS-5900)

Miscellaneous Changes and Improvements

  • Made it possible to configure implementations of FeedablePopulator<Content> for feeding additional properties in the CAE Feeder. Before this change, only implementations of FeedablePopulator<ContentBean> could be used in the CAE Feeder. You can now add both types of populators to the CAE Feeder's Spring bean "feedablePopulators".

    This changes makes it easy to reuse FeedablePopulator implementations written for the Content Feeder in the CAE Feeder as well. For example, the PropertyPathFeedablePopulator can now be used in both feeders to index values of specified nested struct properties.

    (CMS-6116)

Fixed Issues

  • CMS-6495: vagrant coremedia/base box dependency locked to 1.16.0

    locked centos/6.7 box (with virtualbox/5.0.0 guest additions) via:

        
    config.vm.box_version = "~> 1.16.0"
    
    
      

    to avoid 1.18.0 centos/6.8 box update (with virtualbox/5.1.4 guest additions) for now (waiting for vagrant/1.8.6 release)

    See also https://atlas.hashicorp.com/coremedia/boxes/base/

  • CMS-6487: B2B Contracts should use discount on List Price, not Offer Price

    AuroraB2B Price Rules in demo data now use list prices as basis for discount.

  • CMS-6485: Teaser in Hotzone of Image Map should link to Teaser target and not to Teaser

    Links in Image Maps now use the target property of CMTeasable in order to link to a CMTeaser's target instead to the CMTeaser itself.

  • CMS-6263: Struct Editor Security

    An XSS vulnerability in the struct editor was fixed.

  • CMS-6250: CrowdUserProvider

    The CrowdUserProvider did not behave correctly when there were errors accessing Crowd. Instead of passing technical exceptions to the caller it silently ignored the exceptions and returned null which is a signal for: Crowd does not know the user. The same was true for accessing groups.

    The fix will now only ignores the exceptions UserNotFoundException and GroupNotFoundException. All other exceptions are forwarded to the caller.

    In case you do not want to update to this version just change the methods getUser and getGroup as described above.

    Note: Using the new CrowdUserProvider might pop up issues within your Crowd access you were not aware of before, as the exceptions were hidden and the symptoms were possible at very different places. So applying this change also might mean that you need to fix your Crowd set up.

  • CMS-6153: Richtext Toolbar menu button icons now maintain focus in the richtext area

    Clicking on the arrow next to richtext toolbar menu buttons previously resulted in the loss of selection within the richtext area (at least optically). This has been fixed by increasing the size of the menu icons to be 34x24 pixels - large enough to cover the area with the arrow. Those wishing to create custom buttons with menu dropdowns for the richtext area may consider creating the icons in this size with the actual icon picture shifted towards the left size of the canvas (in order to provide space for the overlaid arrow).

  • CMS-6077: IBM Rest interface "byParentCategory" uses paging

    changed maxRows property of CoreMedia_findSubCategories search profile in wc-search.xml to find more than 50 subcategories by default

  • CMS-6065: Hybrid scenario (commerce- and content-led): Inconsistency: request's site is known... sometimes

    SiteHelper (com.coremedia.blueprint.base.multisite.SiteHelper#getSiteFromRequest) now also works in the commerce-led / fragment scenario.

  • CMS-6059: Metadata Resolution

    The method resolveMetadata of BlobMetadataResolver implementations is only called if the method canHandle returned true, contrary to earlier implementation that called resolveMetadata too often.

  • CMS-6005: MongoDB aggregation framework replaces Map-Reduce

    The average and histogram counters are now calculated using the MongoDB Aggregation Framework replacing the former Map-Reduce implementation. As the internal storage format needed to be changed you need to trigger the refreshing of these counters per JMX. See here for instructions on how to refresh counters. The counters will also be triggered automatically, but that can take up to 24h (unless configured differently). This means that after an update the top rated lists etc. will be empty until the counters are refreshed.

  • CMS-5986: Search Landing Pages

    A dedicated and more intuitively named Page "LiveContext Search Landing Pages Hidden Page" with segment "livecontext-search-landing-pages" is added to the demo content. The default property value in the blueprint for "livecontext.slp.segmentPath" was changed to "livecontext-search-landing-pages", accordingly. All Search Landing Page documents are moved to that Page and all non-Search Landing Pages are kept in the old LiveContext Fragments Hidden Page and will not be rendered as Search Landing Pages in the preview, anymore.

  • CMS-5964: Image map does not show links to non-valid products

    Links to products and the corresponding link areas are no longer rendered if the product is not visible by contract (or is in another workspace).

  • CMS-5963: Image map does not show links to non-valid categotries

    Links to categories and the corresponding link areas are no longer rendered if the category is not visible by contract, by time-validity (or is in another workspace).

  • CMS-5924: CONTAINS query for structs

    In the UAPI, it is now consistenly possible to query for structs CONTAINing strings using both server-side (poseContentQuery, cm query) and client-side queries (getContentsFulfilling, getReferrersFulfilling etc.).

  • CMS-5898: Allow negative facet.limit in SolrSearchQueryBuilder

    Changed the default value of SearchQueryBean#getFacetLimit from -1 to 100, which is the correct default value for Solr. If a different, possibly negative value is set with #setFacetLimit that value is send to Solr. Negative values can now be used for unlimited facet results.

  • CMS-5895: WCS error handling improved with CoreMedia Studio

    A WCS error could lead to a freeze of the Studio Library (e.g. in case of connectivity problems or problems with the user authorization). These issues are resolved.

  • CMS-5657: LiveContext: Product quantity typically is a float, not string

    Avoiding ClassCastExceptions in com.coremedia.livecontext.ecommerce.ibm.inventory.AvailabilityInfoImpl#getQuantity(). DataMapHelper now also uses Spring's Conversion Service to convert between types (e.g. String to Float).

  • CMS-5642: Resource Bundle Linklist is missing for Augmented Pages.

    Augmented Pages now have a Resource Bundle linklist in the Studio form under Localization

  • CMS-5397: Content of type "Augmented Page" does not show teaser thumbnail image in library

    Augmented Pages now their Teaser Picture in library thumbnail view

  • CMS-5236: Image Editor Breaks after Adding and Removing Variant

    Image Editor Breaks after Adding and Removing Variant: The new Image Editor can now handle dynamic variants.

  • CMS-5222: Reverting a picture does not clear the undo history

    Reverting a picture does not clear the undo history: in the new Image Editor, the undo history is reset upon reverting the image.

  • CMS-5216: Image incorrectly flipped if rotated

    Image incorrectly flipped if rotated: For example, if the image was rotated by 90 degrees, then a horizontal flip appeared as a vertical flip as the flip action was performed with respect to the original image. In the new Image Editor, the flip actions are performed with respect to the rotated image.

  • CMS-4896: Undo history of image editor sometimes truncated

    Undo history in the Image Editor is no longer truncated, but shows the entire undo history list.

  • CMS-4798: Image blank when changing rotation or contrast

    Image blank when changing rotation or contrast: Fixed with the new Image Editor

  • CMS-3654: Individual Image Crops in overview do not update on each flip-action

    Individual Image Crops in overview do not update on each flip-action: Fixed with the updated Image Editor

  • CMS-3488: Console error when applying fine rotation

    Fine rotation is broken for some images: fixed in the new Image Editor

  • CMS-2410: No crop boundaries shown after rotate, flip, brightness or contrast change

    In the new Image Editor, crop boundaries remain visible after all editing operations.

  • CMS-1706: Lazy Loading Image Editor creates broken Tabs

    No more broken crop tabs on large picture upload in the new Image Editor.