Há vários serviços avançados relacionados à renderização de fragmentos de conteúdo. Para usar esses serviços, os tipos de recursos desses componentes devem se tornar conhecidos pela estrutura de fragmentos de conteúdo.
Isso é feito configurando o Serviço OSGi - Configuração do componente de fragmento de conteúdo.
Se você não precisar dos serviços avançados descritos abaixo, poderá ignorar esta configuração.
Ao estender ou usar os componentes predefinidos, não é recomendável alterar a configuração.
Você pode gravar um componente do zero que usa somente a API Fragmentos de conteúdo, sem serviços avançados. No entanto, nesse caso, você terá que desenvolver seu componente para que ele lide com o processamento apropriado.
Portanto, é recomendável usar os componentes principais.
Os serviços que exigem o registro de um componente são:
Se você precisar de um ou mais desses recursos, então (normalmente) é mais fácil usar a funcionalidade predefinida, em vez de desenvolvê-la do zero.
A configuração precisa estar vinculada ao serviço OSGi Configuração do componente de fragmento de conteúdo:
com.adobe.cq.dam.cfm.impl.component.ComponentConfigImpl
Consulte Configurando o OSGi para obter mais detalhes.
Por exemplo:
A configuração do OSGi é:
Etiqueta | Configuração do OSGi |
Descrição |
Tipo de recurso | dam.cfm.component.resourceType |
O tipo de recurso a ser registrado; por exemplo,
|
Propriedade de referência | dam.cfm.component.fileReferenceProp |
O nome da propriedade que contém a referência ao fragmento; por exemplo, fragmentPath ou fileReference |
Propriedade do(s) elemento(s) | dam.cfm.component.elementsProp |
O nome da propriedade que contém os nomes dos elementos a serem renderizados; por exemplo,elementName |
Propriedade de variação |
dam.cfm.component.variationProp |
O nome da propriedade que contém o nome da variação a ser renderizada; por exemplo,variationName |
Para algumas funcionalidades (por exemplo, para renderizar apenas um intervalo de parágrafos), você terá que aderir a algumas convenções:
Nome da Propriedade | Descrição |
paragraphRange |
Uma propriedade de string que define o intervalo de parágrafos a serem enviados se estiver em modo de renderização de elemento único. Formato:
|
paragraphScope |
Uma propriedade de string que define como os parágrafos devem ser exibidos se em modo de renderização de elemento único. Valores:
|
paragraphHeadings |
Uma propriedade booleana que define se os cabeçalhos (por exemplo, h1 , h2 , h3 ) são contados como parágrafos (true ) ou não (false ) |
Isso pode mudar em mais de 6,5 marcos.
Como exemplo, consulte o seguinte (em uma instância AEM predefinida):
/apps/core/wcm/config/com.adobe.cq.dam.cfm.impl.component.ComponentConfigImpl-core-comp-v1.config
Ele contém:
dam.cfm.component.resourceType="core/wcm/components/contentfragment/v1/contentfragment"
dam.cfm.component.fileReferenceProp="fragmentPath"
dam.cfm.component.elementsProp="elementName"
dam.cfm.component.variationProp="variationName"