Details
-
Bug
-
Resolution: Fixed
-
Medium
-
4.7 Maintenance
-
None
-
eZ Publish Enterprise 4.7
eZ Content Staging 4.7.1
-
Castor Core S2
Description
When using eZ Content Staging 4.7.1, if we set TransportClass=eZRestApiEmbeddedClientStagingTransport471 we won't be able to sync eZ Flow block items.
Setting the environment:
Install two eZ Publish 4.7 instances in order to make them accessible in independent hosts addresses.
One will be your source server, and the other will be the target server.
Install Content Staging.
Installation steps are here: https://doc.ez.no/Extensions/eZ-Publish-extensions/eZ-Content-Staging/eZ-Content-Staging-1.x/Installation
Important: When installing eZ Content Staging 4.7.1 in the source server, make sure to use:
TransportClass=eZRestApiEmbeddedClientStagingTransport471
Create a new content class with the following configuration :
Name : Layout content sync
ID : layout_content_sync
Container : Not checked
Add one attribute (Text line)
- Name of the attribute : Title
- ID of the attribute : title
Add another attribute (datatype layout)
- Name of the attribute : Layout
- ID of the attribute : layout
Submit the creation of the class.
In a override of the block.ini configuration file define a new block as the following:
[LayoutContentSync] Name=Layout content sync NumberOfValidItems=1 NumberOfArchivedItems=0 ManualAddingOfItems=enabled
Add it to the AllowedTypes array, under the [General] block:
AllowedTypes[]=LayoutContentSync
In an override of the zone.ini configuration file, make sure that the "2ZonesLayout1" is avalable in [General] block :
AllowedTypes[]=2ZonesLayout1
Make 2ZonesLayout1 available for class layout_content_sync:
[2ZonesLayout1] AvailableForClasses[]=layout_content_sync
Clear eZ Publish caches, then repeat all previous steps on the ez content staging target instance.
Steps to reproduce:
In the content tree create an new content "Folder" named "eZ Flow block source folder".
In the content tree create a new content object of class Layout content sync:
1. Add the title "Content sync object" to this new object
2. In the "left zone" zone add a new Layout content sync block, and give it the following name: "Issue test"
3. Click on Add item and select the previously created eZ Flow block source folder content object
4. Publish this new Layout content sync object
5. Launch the content staging sync for both the created objects Content sync object and eZ Flow block source folder.
Result:
Check the Target instance.
The eZ Flow block will be synced, but the eZ Flow block item (eZ Flow block source folder) will not be present in the block items.
Note: If we use TransportClass=eZRestApiEmbeddedClientStagingTransport the eZ Flow block item will be synced correctly.
The issue occurs when using TransportClass=eZRestApiEmbeddedClientStagingTransport471 only.