The Transformation module sends a notification to the Syndication Interface module whenever it successfully updates the national information in the MIDB. This mechanism, however, is not completely robust. For instance, once the update to the MIDB has been made and the database transaction has been committed, the Transformation module still needs to send the notification to the Syndication Interface module's webservice. If this webservice is not available, a notification will be missed. To improve robustness of this mechanism, at least the following options exist:
- Send the notifications via a reliable messaging mechanism backed by a persistent storage for messages that cannot be delivered automatically. One such mechanism would be the Java Messaging System (JMS). Sending messages should then be included in the same Java transaction as the update to the MIDB, so that either both succeed or both fail. This requires a Java transaction manager with support for XA transactions, as well as a JMS implementation. Both are not included in Tomcat; hence in practice this solution requires a full Java EE implementation.
- Integrate the Syndication Interface and Transformation modules into one module that both updates the MIDB and updates the information on fragments and snapshots in the Syndication Storage database. This would need to be performed in a single database transaction.