Web Content Manager supports for the notification of events such as item state changes, or services starting and stopping, or syndication via the Java messaging service. The events can then be leveraged to invalidate remote caches like a CDN like Akamai or take other custom actions.
The following documentation links provide details:
Java Messaging for Web Content: https://www.ibm.com/support/knowledgecenter/SSDK36_8.5.0/wcm/wcm_jms_enable.html
WCM Cache invalidation after syndication: https://developer.ibm.com/recipes/tutorials/wcm-cache-invalidation-after-syndication/
How to implement JMS for WCM from the L2 support team: https://www.ibm.com/developerworks/community/blogs/WCML2Thoughts/entry/how_to_implement_jms_for_wcm8?lang=en
JMS event listeners can be tricky to implement and under certain circumstances a JMS event can be missed / failed to be delivered.
In this blog post we will describe an alternative way to implement a listener for syndication events via a simple Java eclipse plug point. The extensions were added to WebSphere Portal 8.5 CF3 and 18.104.22.168 CF14.
Available extension points:
SyndicatorCompleting (8.5 only): The Syndicator Completing extension point allows implementors to receive notification of a syndicator run completing.
SyndicatorStarted: Extensions that implement this interface are processed in the syndicator after the syndicator receives a successful subscriber ready message from the subscriber and before the syndicator generates the package
SubscriberReady: Extensions that implement this interface are processed in the subscriber after the subscriber ready message is received from the syndicator and before a response is returned to the syndicator.
SubscriberCompleting (8.5 only): The Subscriber Completing extension point allows implementors to receive notification of a subscriber run completing.
The attached zip file contains a sample war file that registers for the extension points SyndicatorStarted and SyndicatorCompleting and prints out the items that were syndicated to System.out log.
As always the usual legal disclaimer for sample source code applies:
DISCLAIMER OF WARRANTIES:
The following [enclosed] code is sample code created by IBM Corporation.
This sample code is provided to you solely for the purpose of assisting
you in the development of your applications.
The code is provided "AS IS", without warranty of any kind. IBM shall
not be liable for any damages arising out of your use of the sample code,
even if they have been advised of the possibility of such damages.
Credits: All credits go to Chet Tuttle from our WCM/WCH development team.