HTL Use-API

HTL encourages separation of concerns by not allowing business logic to mix with markup. Business logic can be implemented through the Use-API.

The following table gives an overview of the advantages and disadvantages of each API.

Java Use-API JavaScript Use-API
Advantages
  • Faster
  • Can be inspected with a debugger
  • Easy to unit-test
  • Can be modified by front-end developers
  • Is located within the component, keeping the view logic of a component close to its corresponding template
Disadvantages
  • Cannot be modified by front-end developers
  • Slower
  • No debugger (yet)
  • Harder to unit-test

For page components, it is recommended to use a mixed model, where all model logic is located in Java, providing clear APIs that are agnostic to anything that happens in the view (i.e. within the components). AEM comes with great default models like the Page or the Resource API that should be able to cover most cases.

All view logic that is specific to a component should be placed within that component as JavaScript, because it belongs to that component.

On this page

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now