Project

Profile

Help

Bug #4990

open

saxon-js 2.2 no longer reads stylesheet URIs from web context

Added by John Dziurlaj about 1 year ago. Updated 4 months ago.

Status:
AwaitingInfo
Priority:
Low
Assignee:
-
Category:
-
Sprint/Milestone:
-
Start date:
2021-05-14
Due date:
% Done:

0%

Estimated time:
Applies to JS Branch:
2
Fix Committed on JS Branch:
Fixed in JS Release:
SEF Generated with:
Platforms:
Company:
-
Contact person:
-
Additional contact persons:
-

Description

I am working on upgrading a project from SaxonJS 2.0 to 2.2. However, when upgrading this webpack project, I am getting an error regarding the resolution of the stylesheet, which is passed via URI:

[10:32:49 AM] uncaught exception: XError:Failed URI resolution: href=xslt/cvr_v1_json2xml.sef.json base=undefined -- TypeError: k is not a constructor; code:FODC0005

   saxon.transform({
            sourceText: wrappedJson,
            stylesheetLocation: `xslt/${sefFile}`,
            initialTemplate: "start",
            destination: "application"
        }, cb);

I have checked by entering the SEF URL manually, and it resolves (Firefox and Chrome).

(see cdftransformer.ts) Full codebase here

Actions #1

Updated by Norm Tovey-Walsh about 1 year ago

I did some testing with Webpack in the course of investigating the global object bug. I would have said that we have tests that cover this case, but perhaps I'm mistaken. We'll take a look as soon as possible. Apologies for the inconvenience.

Actions #2

Updated by Norm Tovey-Walsh 12 months ago

Sorry for the delay. I was trying to reproduce the bug but I'm not having much luck. The repo you point to contains XML SEF files but not the original stylesheets. Saxon-JS 2.x doesn't support XML SEF files, can you provide the JSON versions or the original stylesheets?

If you can describe a little more precisely how to reproduce the problem, that would also be appreciated. Thanks!

Actions #3

Updated by Norm Tovey-Walsh 4 months ago

  • Status changed from New to AwaitingInfo
Actions #4

Updated by John Dziurlaj 4 months ago

There is a JSON based SEF located at https://github.com/HiltonRoscoe/CDFConverter/blob/saxonjs-upgrade/src/xslt/cvr_v1_json2xml.sef.json. The CVR JSON2XML is configured to use this style sheet.

Actions #5

Updated by Debbie Lockett 4 months ago

I've had a look at the GitHub project, but I've not yet worked out how to use webpack to try testing changes myself; so I don't yet have a working repro.

I'd be interested to know what happens if you try updating to use Saxon-JS 2.3 rather than 2.2. I can see that the failure arises internally within the call to resolveUri (in NodePlatform.js); and there were some code changes in this area for the 2.3 release (e.g. re bug #5021).

I'm not necessarily confident that it'll be fixed, but perhaps you'll see a different (more useful) error message...

Please register to edit this issue

Also available in: Atom PDF Tracking page