Desenvolver exportadores de modelo do Sling
Esta apresentação técnica aborda a configuração do AEM para uso com o Exportador de modelo Sling, aprimorando um Modelo Sling existente usando a estrutura do Exportador para renderização como JSON e como usar as opções do Exportador e as anotações Jackson para personalizar ainda mais a saída.
O Exportador de modelo Sling foi introduzido no Sling Models v1.3.0. Esse novo recurso permite que novas anotações sejam adicionadas aos Modelos do Sling, que definem como o Modelo pode ser exportado como um objeto Java diferente ou, mais comumente, serializado em um formato diferente, como JSON.
O Apache Sling fornece um exportador Jackson JSON para cobrir o caso mais comum de exportação de Modelos Sling como objetos JSON para consumo por consumidores da Web programáticos, como outros serviços da Web e aplicativos JavaScript.
Configuração do AEM para o Exportador de modelo do Sling
Sling Model Exporter é um recurso do projeto Apache Sling e não está diretamente vinculado ao ciclo de lançamento do produto AEM. Sling Model Exporter é compatível com AEM 6.3 e posterior.
O caso de uso para Sling Model Exporter
O Sling Model Exporter é perfeito para aproveitar os Modelos do Sling que já contêm lógica de negócios que oferecem suporte a representações de HTML via HTL (ou anteriormente JSP) e expõem a mesma representação de negócios que o JSON para consumo por serviços Web programáticos ou aplicativos JavaScript.
Criação de um exportador de modelo do Sling
Habilitar o suporte a Exporter em um Sling Model é tão fácil quanto adicionar a anotação @Exporter
à classe Java.
Aplicação das opções do Exportador de modelo do Sling
O Sling Model Exporter oferece suporte à transmissão de opções do Exportador por modelo para a implementação do Exportador, a fim de orientar como o Sling Model será exportado. Essas opções geralmente se aplicam "globalmente" à forma como o Sling Model é exportado, em vez de por ponto de dados, o que pode ser feito por meio de anotações incorporadas descritas abaixo.
Jackson Exporter opções incluem:
Aplicando Jackson anotações
As implementações de exportadores também podem suportar anotações que podem ser aplicadas em linha na classe Sling Model, o que pode fornecer um nível mais fino de controle sobre como os dados são exportados.