사용자 정의 페이지 Deployer에서 변환 된 HTML 페이지에 액세스하는 방법은 무엇입니까?

StackOverflow https://stackoverflow.com//questions/11671026

문제

사용자 정의 배포자에서 게시 된 페이지의 내용에 액세스해야합니다. 이 코드 의이 부분은 PageDeploy 클래스를 확장하는 CustomModule에있는 ProcessPage 메서드 안에 있습니다.

이 방법으로 게시되는 페이지를 가져 오지만 해당 페이지의 내용이 변환되지 않습니다 (해당 페이지에있는 구성 요소가 렌더링되지 않음).

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

clanup을 false로 변경하여 cd_deployer.conf.xml에서 transportPackages 정리를 비활성화 할 수 있다는 것을 알고있는 경우 : <WorkFolder Location="C:\tridion\work" Cleanup="false"/>, Tridion이 두 가지 버전의 내 페이지를 생성하는 것을 알 수 있습니다.

  1. root \ page.html (PATH PAGEFILE.TOSTRINGE () 경로가있는 Unrured Content가있는
  2. root \ transformed \ page.html (내용 완전한 콘텐츠 - 내가 원하는 내용이 있음)

    변환 된 페이지 파일 경로로 새 파일을 만들고 읽은 다음 읽기를 읽고 원래의 HTML을 더 적은 콘텐츠로 HTML 코드를 얻을 수 있습니까? 이는 배포 페이지 의이 단계에서 여전히 렌더링되지 않고 완료되지 않거나 ...?

    감사합니다!

도움이 되었습니까?

해결책

동적 구성 요소 프레젠테이션을 사용하는 페이지입니다. 그렇다면 게시되고 배포 된 페이지 수준 HTML은 구성 요소 프리젠 테이션에 대한 "포함 명령"만 포함됩니다

<tcdl:ComponentPresentation ... />
.

배포 중에 발생하는 유일한 것은 게시 / 전송 중에 사용되는 "기술적 agnostic"언어가 JSP 태그 또는 ASP.NET 서버 컨트롤로 변환됩니다. 두 경우 모두 일반적으로 일반적으로 tridion:ComponentPresentation로 시작하여 번역되었습니다. .

동적 구성 요소 프리젠 테이션 자체의 HTML 조각은 별도로 게시되고 구성된 저장소의 별도의 항목으로 저장됩니다.

완전한 HTML은 페이지가 요청되면 (방문자에게 봉사하기 위해)됩니다. 해당 단계에서 JSP 태그 라이브러리 또는 ASP.NET 서버 컨트롤이 호출되고 저장소에서 구성 요소 프레젠테이션의 HTML 조각을 읽고 페이지의 HTML "와이어 프레임"에 주입합니다.

해당 지식을 사용하면 DCP 조각의 동적 구성 요소 프레젠테이션에 대한 HTML 조각을 페이지 쉘에 병합하는 이유를 설명합니다. 배포 된.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top