SystemEvent Not Running in Oracle WebCenter Sites

image

System Events in WebCenter Sites are very useful for running elements in the background without any user intervention. They are registered in the SystemEvents table and can point to any SiteCatalog entry or SiteEntry asset. Sometimes you're sure it has been registered properly but for some reason it just isn't running. You tried setting the logger "com.fatwire.logging.cs.event" to DEBUG and all events are running just fine except for yours, which doesn't appear in the logs at all. If your event is pointing to a SiteEntry instead of a SiteCatalog entry, chances are the information below will help you.

Symptom:

I created a SystemEvent in WCS. The pagename=xxx value points to a SiteEntry/CSElement pair (and NOT to a SiteCatalog entry). The system event does not run when expected.

Problem:

When you create a SiteEntry (as opposed to a SiteCatalog entry), the resargs1 column is set to rendermode=live&site=xxx, where "xxx" is the name of the site in which you created your SiteEntry. Since system events run without logging into a specific site, WCS prevents the event from being run because the event's user is not logged into the site indicated in the resargs1 field.

Resolution:

Manually edit the SiteEntry in the SiteCatalog table. Remove "&site=xxx" from the resargs1 field. Keep all other values the same, including rendermode=live in the resargs1 field.

Alternate Resolution:

Create a SiteCatalog entry instead of a SiteEntry. You'll notice the SiteCatalog table is almost exactly the same, except resargs1 doesn't contain site=xxx and resargs2 doesn't point to a SiteEntry asset. This will work fine as well. 

Subscribe to Our Newsletter

Stay In Touch