Documentation Center

Content Delivery functionality introduced in SDL Web 8

A list of new Content Delivery features and functionality that were introduced in SDL Web 8.

New RESTful, service-based setup

SDL Web 8 introduces a major architectural shift in Content Delivery. All features can now be installed outside of your Web applications in the form of microservices (also referred to as Content Interaction Services or CIS). To interact with these, your Web applications can make do with very lightweight, RESTful clients (Content Interaction Libraries or CIL).

This new RESTful, service-based setup has a number of distinct advantages over the existing architecture:
  • The Content Delivery environments can be upgraded independently from your Web applications: newer CILs will be able to talk to older CIS, and vice versa.
  • In your Web applications, third-party dependencies have been minimized, thus preventing library conflicts.
  • The only prerequisite made of your client systems (in which your Web applications run) is that it supports Java 8 or .NET 4.5.2. No specific Web application server or operating system is required.
  • The .NET client no longer requires JuggerNET or Java; it is an independent client. This prevents Java interop issues and garbage collection problems.
  • Deployment of the microservices (Content Interaction Services or CIS) is a much simpler task than the deployment of server-side components in earlier product releases.

If you are an existing customer, your in-process client setup continues to be supported, but you can also choose to perform a staged migration, turning your in-process setup into a microservice-based setup gradually. You can choose to run your microservices inside Java/JSP Web applications if you prefer (a deprecated setup); ideally, you will want to migrate to standalone microservices, which require no pre-installed software on your end beyond Java 8.

Discovery Service

Before SDL Web 8, implementers had to configure the locations of various access points on the Content Delivery side, such as Web service endpoints or the Content Deployer, directly in Content Manager. SDL Web 8.5 introduces the Discovery Service, a centralized Web service that serves as a knowledge repository for all Content Delivery access points.

Because of this change, the management side (specifically the new Topology Manager) only needs to know the location of the Discovery Service, and can get all other Content Delivery destinations from it.

Reorganization of exception classes in the Content Delivery APIs

The Content Delivery Java and .NET APIs now each have a base class for Content Delivery exceptions called DeliveryException. All other exceptions extend this class. This has also resulted in a reorganization of exception classes and in the creation of a number of new exception classes. Refer to the API reference documentation for more information.

This change also deprecates the EmbeddingException class. This means that if your code uses this class, it will continue to work in this release, but it is not guaranteed to remain supported from the next major release onward.

SchemaFactory

This new class in the Content Delivery APIs enables implementers to access the Schemas in the Content Data Store, as well as the (custom) metadata of those Schemas. Typically, you would retrieve this information as a part of querying the Content Data Store. For more information about this class, refer to the Content Delivery .NET API reference documentation or the Content Delivery Java API reference documentation, available as downloads.

Metadata no longer stored on the file system
As of SDL Web 8, you must use a database, rather than the file system, if you want to store metadata. Specifically, you can no longer store metadata of the following types in the file system:
  • BinaryMeta
  • BinaryVariant
  • ComponentMeta
  • ComponentPresentationMeta
  • ItemMeta
  • LinkInfo
  • PageMeta
  • Reference
  • Schema