[xwiki/xwiki-platform] ce1828: XWIKI-23194: PDF export using the headless Chrome ...
Branch: refs/heads/master Home: https://github.com/xwiki/xwiki-platform Commit: ce1828bd4319d9c462aef8f3e4c2e51b1a59f8e2 https://github.com/xwiki/xwiki-platform/commit/ce1828bd4319d9c462aef8f3e4c2e... Author: Marius Dumitru Florea <[email protected]> Date: 2025-05-12 (Mon, 12 May 2025) Changed paths: M xwiki-platform-core/xwiki-platform-container/xwiki-platform-container-servlet/src/main/java/org/xwiki/container/servlet/HttpServletUtils.java M xwiki-platform-core/xwiki-platform-container/xwiki-platform-container-servlet/src/test/java/org/xwiki/container/servlet/HttpServletUtilsTest.java M xwiki-platform-core/xwiki-platform-export/xwiki-platform-export-pdf/xwiki-platform-export-pdf-api/src/main/java/org/xwiki/export/pdf/browser/AbstractBrowserPDFPrinter.java M xwiki-platform-core/xwiki-platform-export/xwiki-platform-export-pdf/xwiki-platform-export-pdf-api/src/main/java/org/xwiki/export/pdf/internal/browser/CookieFilter.java M xwiki-platform-core/xwiki-platform-export/xwiki-platform-export-pdf/xwiki-platform-export-pdf-api/src/test/java/org/xwiki/export/pdf/browser/BrowserPDFPrinterTest.java M xwiki-platform-core/xwiki-platform-export/xwiki-platform-export-pdf/xwiki-platform-export-pdf-default/src/main/java/org/xwiki/export/pdf/internal/browser/AuthenticationCookieFilter.java M xwiki-platform-core/xwiki-platform-export/xwiki-platform-export-pdf/xwiki-platform-export-pdf-default/src/test/java/org/xwiki/export/pdf/internal/browser/AuthenticationCookieFilterTest.java M xwiki-platform-core/xwiki-platform-export/xwiki-platform-export-pdf/xwiki-platform-export-pdf-test/xwiki-platform-export-pdf-test-docker/src/test/it/org/xwiki/export/pdf/test/ui/PDFExportIT.java M xwiki-platform-core/xwiki-platform-oldcore/src/main/java/com/xpn/xwiki/user/impl/xwiki/MyPersistentLoginManager.java M xwiki-platform-core/xwiki-platform-rest/xwiki-platform-rest-server/pom.xml M xwiki-platform-core/xwiki-platform-rest/xwiki-platform-rest-server/src/main/java/org/xwiki/rest/internal/resources/ClientResourceImpl.java Log Message: ----------- XWIKI-23194: PDF export using the headless Chrome Docker container fails when view access is restricted * Move getClientIP() from MyPersistentLoginManager to HttpServletUtils in order to be able to reuse it. * Get the client IP again after setting the Forwarded HTTP header, because the perceived client IP may have changed once we mark the headless Chrome as a proxy. (cherry picked from commit bdbe4ed19accada180ba681852d21cd1a547255f) Commit: f373983d5f093348648d8fbbdb7dcee6c99d8b15 https://github.com/xwiki/xwiki-platform/commit/f373983d5f093348648d8fbbdb7dc... Author: Marius Dumitru Florea <[email protected]> Date: 2025-05-12 (Mon, 12 May 2025) Changed paths: M xwiki-platform-core/xwiki-platform-export/xwiki-platform-export-pdf/xwiki-platform-export-pdf-api/src/main/java/org/xwiki/export/pdf/PDFPrinter.java M xwiki-platform-core/xwiki-platform-export/xwiki-platform-export-pdf/xwiki-platform-export-pdf-api/src/main/java/org/xwiki/export/pdf/browser/AbstractBrowserPDFPrinter.java M xwiki-platform-core/xwiki-platform-export/xwiki-platform-export-pdf/xwiki-platform-export-pdf-api/src/main/java/org/xwiki/export/pdf/browser/BrowserTab.java M xwiki-platform-core/xwiki-platform-export/xwiki-platform-export-pdf/xwiki-platform-export-pdf-api/src/main/java/org/xwiki/export/pdf/internal/job/PDFExportJob.java M xwiki-platform-core/xwiki-platform-export/xwiki-platform-export-pdf/xwiki-platform-export-pdf-api/src/test/java/org/xwiki/export/pdf/internal/job/PDFExportJobTest.java M xwiki-platform-core/xwiki-platform-export/xwiki-platform-export-pdf/xwiki-platform-export-pdf-default/src/main/java/org/xwiki/export/pdf/internal/chrome/ChromeManager.java A xwiki-platform-core/xwiki-platform-export/xwiki-platform-export-pdf/xwiki-platform-export-pdf-default/src/main/java/org/xwiki/export/pdf/internal/chrome/ChromeServiceConfigurationProvider.java M xwiki-platform-core/xwiki-platform-export/xwiki-platform-export-pdf/xwiki-platform-export-pdf-default/src/main/java/org/xwiki/export/pdf/internal/chrome/ChromeServiceFactory.java M xwiki-platform-core/xwiki-platform-export/xwiki-platform-export-pdf/xwiki-platform-export-pdf-default/src/main/java/org/xwiki/export/pdf/internal/chrome/ChromeTab.java A xwiki-platform-core/xwiki-platform-export/xwiki-platform-export-pdf/xwiki-platform-export-pdf-default/src/main/java/org/xwiki/export/pdf/internal/chrome/PageReadyPromise.java M xwiki-platform-core/xwiki-platform-export/xwiki-platform-export-pdf/xwiki-platform-export-pdf-default/src/main/resources/META-INF/components.txt M xwiki-platform-core/xwiki-platform-export/xwiki-platform-export-pdf/xwiki-platform-export-pdf-default/src/test/java/org/xwiki/export/pdf/internal/chrome/ChromeManagerTest.java M xwiki-platform-core/xwiki-platform-export/xwiki-platform-export-pdf/xwiki-platform-export-pdf-default/src/test/java/org/xwiki/export/pdf/internal/chrome/ChromeTabTest.java A xwiki-platform-core/xwiki-platform-export/xwiki-platform-export-pdf/xwiki-platform-export-pdf-test/xwiki-platform-export-pdf-test-content/src/main/resources/PDFExportIT/DelayedPageReady.xml M xwiki-platform-core/xwiki-platform-export/xwiki-platform-export-pdf/xwiki-platform-export-pdf-test/xwiki-platform-export-pdf-test-docker/src/test/it/org/xwiki/export/pdf/test/ui/PDFExportIT.java M xwiki-platform-core/xwiki-platform-export/xwiki-platform-export-pdf/xwiki-platform-export-pdf-test/xwiki-platform-export-pdf-test-pageobjects/src/main/java/org/xwiki/export/pdf/test/po/PDFExportAdministrationSectionPage.java M xwiki-platform-core/xwiki-platform-export/xwiki-platform-export-pdf/xwiki-platform-export-pdf-test/xwiki-platform-export-pdf-test-pageobjects/src/main/java/org/xwiki/export/pdf/test/po/PDFExportOptionsModal.java Log Message: ----------- XWIKI-23187: PDF export can hang indefinitely if the headless Chrome crashes or is stopped * Check multiple times, with shorter timeout, if the page is ready, instead of doing it once with a large timeout * Make sure the "read timeout" configuration of CDT is specified in order to avoid waiting indefinitely when communicating with the headless Chrome * Define the CDT configuration in a single place * Add support for canceling the PDF export job even when it waits for the print preview page to be ready for print * Add integration tests to verify stopping Chrome and canceling the PDF export job while we wait for the print preview page to be ready. * Refactor a bit ChromeTab to avoid Class Fan Out (cherry picked from commit d732752a4ccfde422716484cbc1f5c485f1b06c9) Commit: 7f0bc6ac3e911bb1f26d4a75d24bae455150cbb0 https://github.com/xwiki/xwiki-platform/commit/7f0bc6ac3e911bb1f26d4a75d24ba... Author: Marius Dumitru Florea <[email protected]> Date: 2025-05-12 (Mon, 12 May 2025) Changed paths: M xwiki-platform-core/xwiki-platform-export/xwiki-platform-export-pdf/xwiki-platform-export-pdf-api/src/main/java/org/xwiki/export/pdf/browser/AbstractBrowserPDFPrinter.java M xwiki-platform-core/xwiki-platform-export/xwiki-platform-export-pdf/xwiki-platform-export-pdf-api/src/main/java/org/xwiki/export/pdf/browser/BrowserTab.java M xwiki-platform-core/xwiki-platform-export/xwiki-platform-export-pdf/xwiki-platform-export-pdf-api/src/main/java/org/xwiki/export/pdf/internal/browser/CookieFilter.java M xwiki-platform-core/xwiki-platform-export/xwiki-platform-export-pdf/xwiki-platform-export-pdf-api/src/test/java/org/xwiki/export/pdf/browser/BrowserPDFPrinterTest.java M xwiki-platform-core/xwiki-platform-export/xwiki-platform-export-pdf/xwiki-platform-export-pdf-default/src/main/java/org/xwiki/export/pdf/internal/browser/AuthenticationCookieFilter.java M xwiki-platform-core/xwiki-platform-export/xwiki-platform-export-pdf/xwiki-platform-export-pdf-default/src/test/java/org/xwiki/export/pdf/internal/browser/AuthenticationCookieFilterTest.java Log Message: ----------- XWIKI-23187: PDF export can hang indefinitely if the headless Chrome crashes or is stopped * Fix the build on master. Partial move to Jakarta package. Compare: https://github.com/xwiki/xwiki-platform/compare/b2c5054be012...7f0bc6ac3e91 To unsubscribe from these emails, change your notification settings at https://github.com/xwiki/xwiki-platform/settings/notifications
participants (1)
-
XWiki Notifications