O Exportador de Página

AEM permite exportar uma página como uma página da Web completa, incluindo imagens, arquivos .js e .css.

Depois que a exportação for configurada, basta solicitar uma página no navegador, substituindo-a html por export.zip no URL e você obterá um download de arquivo zip contendo a página renderizada no formato html e os ativos referenciados. Todos os caminhos na página, por exemplo, caminhos para imagens, são reescritos para apontar para os arquivos incluídos no arquivo zip ou para os recursos no servidor.

Exportar uma página

As etapas a seguir descrevem como exportar uma página e presumem que existe um modelo de configuração de exportação para o site. Um modelo de configuração define a forma como uma página é exportada e é específica para seu site. Para criar um modelo de configuração, consulte a seção Criando uma Configuração de Exportador de Página para seu Site .

Para exportar uma página:

  1. No seu navegador, abra a página. Por exemplo:

  2. http://localhost:4502/content/geometrixx/en/products/triangle.html

  3. Abra a caixa de diálogo de propriedades da página, selecione a guia Avançado e expanda o conjunto de campos Exportar .

  4. Clique no ícone de lente de aumento e selecione um modelo de configuração. Selecione o modelo geometrixx , pois é o padrão para o site do Geometrixx. Clique em OK.

  5. Clique em OK para fechar a caixa de diálogo de propriedades da página.

  6. Solicite a página substituindo html por export.zip no URL.

  7. Baixe o <page-name>.export.zip arquivo no seu sistema de arquivos.

  8. No sistema de arquivos, descompacte o arquivo:

    • o arquivo html da página ( <page-name>.html) está disponível abaixo <unzip-dir>/<page-path>
    • outros recursos (arquivos .js, arquivos .css, imagens, …) estão localizados de acordo com as configurações no modelo de exportação. Neste exemplo, alguns recursos estão abaixo <unzip-dir>/etc, alguns abaixo <unzip-dir>/<page-path>.
  9. Abra o arquivo html da página ( <unzip-dir>/<page-path>.html) no navegador para verificar a renderização.

Criando uma Configuração de Exportador de Página para seu Site

O exportador de página é baseado na estrutura de Sincronização de conteúdo. As configurações disponíveis na caixa de diálogo de propriedades da página são modelos de configuração. Eles definem todas as dependências necessárias para uma página. Quando uma exportação de página é acionada, o modelo de configuração é usado e o caminho da página e o caminho do design são aplicados dinamicamente à configuração. O arquivo zip é criado usando a funcionalidade padrão de Sincronização de conteúdo.

AEM incorpora alguns modelos, incluindo:

  • Um padrão em /etc/contentsync/templates/default. Este modelo:

    • É o modelo de fallback quando nenhum modelo de configuração é encontrado no repositório.
    • Pode servir como base para um novo modelo de configuração.
  • Uma que é dedicada ao site do Geometrixx , no /etc/contentsync/templates/geometrixx. Este modelo pode ser usado como exemplo para criar um novo.

Para criar um modelo de configuração de exportador de página:

  1. No CRXDE Lite, crie um nó abaixo /etc/contentsync/templates:

    • Nome: por exemplo, mysite. O nome aparece na caixa de diálogo de propriedades da página ao escolher o modelo de exportador de página.
    • Tipo: nt:unstructured
  2. Abaixo do nó do modelo, chamado aqui mysite, crie uma estrutura de nó usando os nós de configuração descritos abaixo.

Nós de configuração do exportador de páginas

O modelo de configuração consiste em uma estrutura de nó. Cada nó tem uma type propriedade que define uma ação específica no processo de criação do arquivo zip. Para obter mais detalhes sobre a propriedade type, consulte a seção Visão geral dos tipos de configuração na página da estrutura de Sincronização de conteúdo.

Os nós a seguir podem ser usados para criar um modelo de configuração de exportação:

de página O nó de página é usado para copiar a página html para o arquivo zip. Tem as seguintes características:

  • É um nó obrigatório.
  • Está localizado abaixo /etc/contentsync/templates/<sitename>.
  • Seu nome é page.
  • Seu tipo de nó é nt:unstructured

O page nó tem as seguintes propriedades:

  • Uma type propriedade definida com o valor pages.

  • Ela não tem uma path propriedade, pois o caminho da página atual é copiado dinamicamente para a configuração.

  • As outras propriedades são descritas na seção Visão geral dos tipos de configuração da estrutura de Sincronização de conteúdo.

de regravação O nó de regravação define como os links são regravados na página exportada. Os links regravados podem apontar para os arquivos incluídos no arquivo zip ou para os recursos no servidor.

Consulte a página Sincronização de conteúdo para obter uma descrição completa do rewrite nó.

de design O nó de design é usado para copiar o design usado para a página exportada. Tem as seguintes características:

  • É opcional.
  • Está localizado abaixo /etc/contentsync/templates/<sitename>.
  • Seu nome é design.
  • Seu tipo de nó é nt:unstructured.

O design nó tem as seguintes propriedades:

  • Uma type propriedade definida como o valor copy.

  • Ela não tem uma path propriedade, pois o caminho da página atual é copiado dinamicamente para a configuração.

genérico Um nó genérico é usado para copiar recursos como arquivos clientlibs .js ou .css para o arquivo zip. Tem as seguintes características:

  • É opcional.
  • Está localizado abaixo /etc/contentsync/templates/<sitename>.
  • Não tem um nome específico.
  • Seu tipo de nó é nt:unstructured.
  • Tem uma type propriedade e quaisquer propriedades type relacionadas, conforme definido na seção Visão geral dos tipos de configuração da estrutura de Sincronização de conteúdo.

Por exemplo, o nó de configuração a seguir copia os arquivos geometrixx clientlibs .js para o arquivo zip:

"geometrixx.clientlibs.js": {
    "extension": "js",
    "type": "clientlib",
    "path": "/etc/designs/geometrixx/clientlibs",
    "jcr:primaryType": "nt:unstructured"
}

O modelo de configuração de exportação de página de Geometrixx mostra como uma exportação de página pode ser configurada. Para visualização a estrutura de nó do modelo no seu navegador como formato json, solicite o seguinte URL:

http://localhost:4502/etc/contentsync/templates/geometrixx.-1.json

Implementação de uma configuração personalizada

Como você pode ter notado na estrutura do nó, o modelo de configuração de exportação da página de Geometrixx tem um logo nó com uma type propriedade definida como image. Este é um tipo de configuração especial que foi criado para copiar o logotipo da imagem para o arquivo zip. Para atender a alguns requisitos específicos, talvez seja necessário implementar uma type propriedade personalizada: para fazer isso, consulte a seção Implementação de um manipulador de atualização personalizado na página Sincronização de conteúdo.

Exportar uma página de forma programática

Para exportar uma página programaticamente, você pode usar o serviço OSGI PageExporter . Este serviço permite:

  • Exportar uma página e gravar na resposta do servlet HTTP.
  • Exporte uma página e salve o arquivo zip em um local específico.

O servlet vinculado ao export seletor e a zip extensão usa o serviço PageExporter.

Resolução de Problemas

Se houver um problema com o download do arquivo zip, você poderá excluir o /var/contentsync nó no repositório e enviar a solicitação de exportação novamente.

Nesta página