This issue has been created
There are 3 updates.
 
 
XWiki Platform / cid:jira-generated-image-avatar-57e190c3-3010-4c3d-abce-9fb6781de869 XWIKI-25278 Open

Make the export action extensible

 
View issue   ยท   Add comment
 

Issue created

 
cid:jira-generated-image-avatar-aa40d75e-8e2f-44d1-9bf1-744c49feb514 Marius Dumitru Florea created this issue on 13/Oct/26 11:16
 
Summary: Make the export action extensible
Issue Type: cid:jira-generated-image-avatar-57e190c3-3010-4c3d-abce-9fb6781de869 Improvement
Affects Versions: 1.0 B1
Assignee: Unassigned
Components: Export - PDF, Old Core
Created: 13/Oct/26 11:16
Priority: cid:jira-generated-image-static-major-a3307801-a7d9-4c63-aa93-417eec3a22f0 Major
Reporter: Marius Dumitru Florea
Description:

Allow extensions to provide or overwrite export formats for the export action through a new ExportFormatHandler component role, whose hint is the value of the format request parameter (xar being the default format). Each handler declares whether its export format requires a POST request (the default) or whether it can also be requested with GET, which is the case for export formats that only render a page. A handler can also overwrite an export format supported natively by the export action (xar, html, pdf or one of the office formats).

This is needed by the PDF export print preview (format=html-print), which is loaded with a GET request by the web browser that generates the PDF. Since XWIKI-23800 the export action refuses GET requests, so the print preview:

  • ignores the requested page revision: exporting an old revision of a page to PDF exports the latest revision instead (see PDFExportIT#pageRevision, failing on CI)
  • is returned with a 405 status code and the X-FRAME-OPTIONS: DENY HTTP header, which breaks the client-side PDF export, where the print preview is loaded in an iframe

The PDF export application now provides a handler for the html-print export format that accepts GET requests.

 
 

3 updates

 
cid:jira-generated-image-avatar-aa40d75e-8e2f-44d1-9bf1-744c49feb514 Changes by Marius Dumitru Florea on 13/Oct/26 11:16
 
Fix Version: 18.9.0-rc-1
Fix Version: 18.4.7
Assignee: Marius Dumitru Florea