Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 8 Next »

This page contains an overview of features that are currently present in one or both of the frameworks, plus features that we would like to add.

 

.NET version

FeatureImplementation in DD4TImplementation in DXAPreferred solutionDiscussion
ViewModels
  • Attribute-driven
  • Possible to add your own attributes
  • Pages + ComponentPresentations
  • Two-step approach (1. deserialize into page/cp, 2. map properties to strongly typed model)
  • Attribute-driven
  • Not possible to add your own attributes
  • Properties find matching fields in an embedded field
  • ComponentPresentations only
  • Two-step approach
To be decidedIdeal is to deserialize directly from DD4T JSON into view model.
Caching
  • Open, extensible
  • Event-based and time-based invalidation
  • Closed
  • Time-based expiration
DD4T?

We need an overall caching layer for the entire microservice (because SDL doesn't offer this at all)

Enterprises want to decide on a caching solution themselves

Controllers  To be decided 
Navigation 
  • navigation.json page published from Root SG
  • Based on site structure
  • Simple (SG and Page title based) and Localizable (based on component content) implementations
  • Logic in TBB
  • Example Controller, Models and Views to implement Top nav, context nav, breadcrumb, sitemap, google sitemap

DXA?

 
Labels/Resources 
  • 1 labels JSON 'file' published per module (avoids key clashes across modules) as part of Publish Settings page publish
  • Key-value pair and bespoke schema implementations supported
  • Multiple labels components per module possible
? 
Configuration 
  • Implemented in the same way as Labels/Resources
  
Preview Not implementedDD4T 
XPM
  • Linked to ViewModels
  • Helper called from views to render tags
  • Helper called from views to render tags
  • View output is loaded in XML document and manipulated with XPath
DD4TFaster, no requirement to have well-formed view output
Modules 
  • Standard structure for CM and CD for packaging modules
  
HTML Design 
  • Option to build and distribute HTML design from CMS
  • Also possible to deploy as part of web app
  

 

 

Java version

FeatureImplementation in DD4TImplementation in DXAPreferred solutionDiscussion
ViewModels
  • Attribute driven
  • Straight deserialization in STMs
  • n:m models possible
  • Extensible
  • Two-step approach
  • Support for semantics

DD4T

Might be an option to bring semantics into the databind framework.

In any case, the attribute set must be supported.

Caching
  • Fully extensible
  • Support for EHCache and Infinispan
  • Event driven (JMS) and time based
  • Dependency invalidation mechanism
  • Relies on DD4T provider cache
  • No further caching mechanisms found
DD4T

A form of output caching may be needed. This issue is based on a couple

of DXA implementations trying to go live, but having had performance issues.

Controllers  TBD 
Navigation
  • No support for OOTB navigation
 DXAIt would be great if this could be modularized, if not already done.
Labels
  • No OOTB support for Labels
 DXAIt would be great if this could be modularized, if not already done.
PreviewDD4T support Session Preview OOTB, bypassing caching. TBD 
XPM
  • Native XPM support
  • Native XPM support
TBD 
Configuration
  • Spring based XML
  • Code config
DD4TAlthough code based configuration is cleaner, many users prefer the XML based version to make quick edits
Views
  • JSP views
  • JSP Views
TBD 

 

 

  • No labels