Web 8, SI4T and Storage Extensions

The release of SDL Web 8 has seen the biggest overhaul of the Content Delivery stack since Tridion 2011 and much of it has been applauded much, as the new Micro Services architecture and with it the ability to scale, deploy and be distributed in general, gives many more architectural options than just having an API in your web application connecting you to a database.

Building this while guaranteeing backward compatibility with the Tridion 2011/2013 CD stack is more than a major task and I for one am happy to see that that feat was pulled off really well. That is, unless you have overridden the default DAOFactory classes in your Deployer Storage Extensions, as is the case with the SI4T Storage Extensions. When testing SI4T with Web 8, it turned out that loading of the SI4T Storage Extension did not work in every scenario. This has to do with the subtler points of Spring Bean Class loading.

Continue reading

Storage Extension Boilerplates (for Pages to Filesystem and DCPs to Broker)

So tonight I geeked out and created a boilerplate Java project with debugging properly enabled for Tridion Storage Extensions when publishing Pages to the filesystem.  There are a couple tutorials out there explaining how to do this for ComponentPresentation and for a custom type, but not how to do this Pages.  There are a couple of interesting points with this exercise that aren’t really explained elsewhere, so I thought I’d highlight them with this post.  Also, some copy-paste boilerplate code should be handy.

Continue reading