Pergunta

Vamos dizer que nós temos para aceder ao conteúdo da nossa página publicada em um Personalizado Deployer.Esta parte do código está dentro do processPage método que está em nosso CustomModule que se estende PageDeploy classe.

Desta forma, recebo a página que está sendo publicado, mas o conteúdo da sua página não irá ser transformado (componentes que estão na página não são renderizados).

public void processPage(Page page, File pageFile) throws ProcessingException {
    File file = new File(pageFile.toString());
}

Se eu sei que eu posso desativar a limpeza do TransportPackages em cd_deployer.conf.xml alterando a Limpeza para falso: <WorkFolder Location="C:\tridion\work" Cleanup="false"/>, Eu vejo que Tridion gera duas versões da minha página:

  1. root\page.html (que tem unrendered de conteúdo, com o caminho do arquivo de paginação.ToString())
  2. root ransformed\page.html (que tem o conteúdo completo - conteúdo que eu quero)

Por que, então, quando eu criar novo Arquivo com o transformou página de caminho de arquivo e lê-lo, eu recebo o código html com menos conteúdo, em seguida, o html original?É este, pois, nesta fase de implantação, a página ainda não prestados e completa ou...?

Obrigado!

Foi útil?

Solução

É a sua página usando o Componente Dinâmico Apresentações?Se assim for, a nível de Página HTML que é publicado e implementado irá conter apenas um "incluir a instrução" para o Componente de Apresentação

<tcdl:ComponentPresentation ... />

A única coisa que acontece durante a implantação é que a tecnologia de "agnóstico" a linguagem utilizada durante a publicação de transportes, é traduzido para um JSP tag ou um ASP.NET servidor de controle incluem, em ambos os casos, é normalmente traduzido para algo começando com tridion:ComponentPresentation.

O fragmento de HTML do Componente Dinâmico Apresentação em si, será publicada em separado e armazenado como um item separado no armazenamento configurado.

O HTML completo só será composta quando a página é solicitada (para que serve a um visitante).Nessa fase, o JSP tag library ou ASP.NET controle de servidor será invocado, leia o fragmento de HTML para a Apresentação de Componente do armazenamento e injetá-lo em HTML "wireframe" da página.

Com esse conhecimento, ele de fato explica por que você não pode encontrar o fragmento de HTML para o Componente Dinâmico Apresentações em seu Deployer extensão:a fusão do DCP fragmentos na Página da shell só acontece quando a página é solicitada, e não quando ele é implantado.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top