Search code examples
javamagnoliacommercetools

I'm looking for information about connector between CommerceTools and Magnolia


I'm looking for information about the connector or plugin that comes integrated with Magnolia and that allows working with CommerceTools microservices, but I can't find anything.

What worries us most is that the current version we have installed of this connector is 1.2, which uses version 1.51.0 of the CommerceTools SDK v1.

As we all know, on January 1, 2024, this SDK v1 will no longer work and it is necessary to migrate all the code to the SDK v2.

What we don't know is if there is a new version of the connector, or if there will be a way to update the mentioned connector 1.2 to be compatible with the CTP-SDK v2.

Can anyone help us find information about this issue?


Solution

  • I am from the team of Magnolia. Let me point on your comment and reply each different aspect.

    I'm looking for information about the connector or plugin that comes integrated with Magnolia and that allows working with CommerceTools microservices, but I can't find anything.

    The commerce connector pack has un updated documentation that can be reached here https://docs.magnolia-cms.com/product-docs/6.2/Connector-Packs/Commerce-Connector-Pack.html

    This module is part of the enterprise version, and also part of our connector pack.

    I have checked it, and there is an updated version, as I will detail bellow. You can find information about templating, definitions, and key setting to retrieve the information in the previous link. Please, let us know if you miss anything there.

    What worries us most is that the current version we have installed of this connector is 1.2, which uses version 1.51.0 of the CommerceTools SDK v1.

    As pointed in here https://docs.magnolia-cms.com/product-docs/6.2/Connector-Packs/Commerce-Connector-Pack/E-commerce-module.html the last version is 1.3.4 and, as you can see in our open source repo for it, the api connector that is

       <commercetoolsSDKVersion>7.6.0</commercetoolsSDKVersion>
    
    <!-- commercetools SDK Version 2 -->
      <dependency>
        <groupId>com.commercetools.sdk</groupId>
        <artifactId>commercetools-okhttp-client3</artifactId>
        <version>${commercetoolsSDKVersion}</version>
      </dependency>
      <dependency>
        <groupId>com.commercetools.sdk</groupId>
        <artifactId>commercetools-sdk-java-api</artifactId>
        <version>${commercetoolsSDKVersion}</version>
      </dependency>
      <dependency>
        <groupId>com.commercetools.sdk</groupId>
        <artifactId>commercetools-sdk-java-ml</artifactId>
        <version>${commercetoolsSDKVersion}</version>
      </dependency>
      <dependency>
        <groupId>com.commercetools.sdk</groupId>
        <artifactId>rmf-java-base</artifactId>
        <version>${commercetoolsSDKVersion}</version>
      </dependency>
    

    It brings a new API for commercetools in the api should be compatible.

    As we all know, on January 1, 2024, this SDK v1 will no longer work and it is necessary to migrate all the code to the SDK v2.

    As suggested, just upgrade your plugin. There are some minimal concerns, related to the templating, I saw that there are a retro compatibility templating system which will allow you to use any templating functions you have, and notice that is deprecated.

    I made some research related to the package version and differences as we had a similar question recently:

    • In the module by itself, there are no major changes than API, and packages seem to be different.
    • According to dependencies, it removes netty dependencies, which are not needed anymore
    • EcommerceConnectionProvider just includes more functionality
    • Category & Product are compatible for the upgrade.
    • Templating seems to be improved as there are deprectaed dialogs which are equivalent to 1.2 and new versions, under v3 which are different. Follow the provided ones

    For instance, you have the following definition for categoryList:

    category-list-v3.ftl
    category-list-v3.yaml
    category-list.ftl
    category-list.yaml

    The same pattern happens for the following definitions/components, that you may know if you are using the previous version:

    category-list, product-detail, product-list, product-teaser

    Keep in mind that you may need to decorate them or overwrite to fit your current product, but it should work. https://docs.magnolia-cms.com/product-docs/6.2/Developing/Definition-decoration.html

    What we don't know is if there is a new version of the connector, or if there will be a way to update the mentioned connector 1.2 to be compatible with the CTP-SDK v2.

    You can check the resolution long time ago from https://jira.magnolia-cms.com/browse/ECOMMERCE-491

    Can anyone help us find information about this issue?

    As a minor upgrade version following our https://docs.magnolia-cms.com/product-docs/6.2/Support/Deprecation-policy.html it should be compatible.