Uso de vários seletores

Embora não seja um caso de uso padrão, é possível configurar vários seletores além do model seletor.

https://<server>:<port>/content/page.model.selector1.selector2.json

No entanto, nesse caso, o model o seletor deve ser o primeiro seletor e a extensão deve ser .json.

Anotar a interface do modelo Sling

Para ser considerado pelo quadro do exportador JSON, a interface do modelo deve implementar a variável ComponentExporter interface (ou ContainerExporter, no caso de um componente de contêiner).

A interface correspondente do Modelo do Sling ( MyComponent) seria anotada usando Anotações de Jackson para definir como ele deve ser exportado (serializado).

A interface Modelo precisa ser anotada corretamente para definir quais métodos devem ser serializados. Por padrão, todos os métodos que respeitam a convenção de nomenclatura usual para getters serão serializados e derivarão seus nomes de propriedades JSON naturalmente dos nomes getter. Isso pode ser evitado ou substituído por @JsonIgnore ou @JsonProperty para renomear a propriedade JSON.

Exemplo

Os Componentes principais têm suporte para exportação JSON desde a versão 1.1.0 dos componentes principais e podem ser usadas como referência.

Para obter um exemplo, consulte a implementação do Modelo do Sling do Componente principal de imagem e sua interface anotada.

CÓDIGO NO GITHUB

Você pode encontrar o código desta página no GitHub

Experience Manager