Stream: IG creation
Topic: ig publisher error: jekyll control characters not allowed
Arvind Jagannathan (Aug 14 2019 at 22:21):
I'm executing the IG Publisher on an implementation guide and am getting the following errors:
Arvind Jagannathan (Aug 14 2019 at 22:21):
Jekyll: Source: D:/test igs/generated_output/temp (00:01:22.0657sec) Jekyll: Generating... (00:01:22.0659sec) Jekyll: jekyll 3.8.6 | Error: (D:/test igs/generated_output/temp/_data/structuredefinitions.json): control characters are not allowed at line 1 column 1 (00:01:24.0046sec) Jekyll has failed - not installed (correcty?). Complete output from running Jekyll: jekyll 3.8.6 | Error: (D:/test igs/generated_output/temp/_data/structuredefinitions.json): control characters are not allowed at line 1 column 1 (00:01:24.0061sec) Publishing Content Failed: Process exited with an error: 1 (Exit value: 1) (00:01:24.0066sec) (00:01:24.0066sec) Use -? to get command line help (00:01:24.0067sec) (00:01:24.0073sec) Stack Dump (for debugging): (00:01:24.0078sec) org.apache.commons.exec.ExecuteException: Process exited with an error: 1 (Exit value: 1) at org.apache.commons.exec.DefaultExecutor.executeInternal(DefaultExecutor.java:404) at org.apache.commons.exec.DefaultExecutor.execute(DefaultExecutor.java:166) at org.apache.commons.exec.DefaultExecutor.execute(DefaultExecutor.java:153) at org.hl7.fhir.igtools.publisher.Publisher.runJekyll(Publisher.java:4355) at org.hl7.fhir.igtools.publisher.Publisher.runTool(Publisher.java:4277) at org.hl7.fhir.igtools.publisher.Publisher.generate(Publisher.java:3793) at org.hl7.fhir.igtools.publisher.Publisher.createIg(Publisher.java:722) at org.hl7.fhir.igtools.publisher.Publisher.execute(Publisher.java:600) at org.hl7.fhir.igtools.publisher.Publisher.main(Publisher.java:6301) Exception in thread "main" java.lang.NullPointerException at org.hl7.fhir.igtools.publisher.Publisher.main(Publisher.java:6311)
Arvind Jagannathan (Aug 14 2019 at 22:22):
I suspect it has something to do with character encoding... But I'm not sure why this would be an issue.
Arvind Jagannathan (Aug 14 2019 at 22:22):
Additionally, the error is related to a file that is generated by the IG Publisher
Arvind Jagannathan (Aug 14 2019 at 22:22):
The encoding of that file appears to be "UTF-8 BOM" while all the resources are encoded as "UTF-8"
Arvind Jagannathan (Aug 14 2019 at 22:23):
I'm not sure why the IG Publisher is encoding this generated file as "UTF-8 BOM"
Arvind Jagannathan (Aug 14 2019 at 22:23):
Anyone have any ideas?
Arvind Jagannathan (Aug 14 2019 at 22:23):
@Sean McIlvenna recommends I mention @Grahame Grieve and @Lloyd McKenzie :)
Grahame Grieve (Aug 14 2019 at 22:51):
is this reproducible on another computer?
Lloyd McKenzie (Aug 15 2019 at 00:51):
What's showing up in the referenced JSON file?
Grahame Grieve (Aug 15 2019 at 01:03):
Jekyll should not be processing a plain .json file, so it's a bit mystifying.
Lloyd McKenzie (Aug 15 2019 at 01:35):
That's a file that might be being used for lookup info. That's what the data files are for. My guess is something not escaped properly.
Sean McIlvenna (Aug 15 2019 at 05:31):
@Arvind Jagannathan will have to package up the files into a zip and send them to me so I can test if the same error occurs on my machine. As for what's IN the json file, it just seems to be some lookup information on the various profiles in the IG. I'm surprised you're not aware of it, though, as I was thinking it was generated by the IG Publisher... There was no structuredefinitions.json file in the core IG files, to my knowledge. Again, @Arvind Jagannathan will have to confirm.
Grahame Grieve (Aug 15 2019 at 06:54):
I do generate it - I didn’t check the path. But nothing has changed in how it generates...
Sean McIlvenna (Aug 15 2019 at 15:25):
Sean McIlvenna (Aug 15 2019 at 15:25):
I got the same error as @Arvind Jagannathan on my computer
Sean McIlvenna (Aug 15 2019 at 15:25):
using the package above
Grahame Grieve (Aug 15 2019 at 18:58):
looks to me like the error position is wrong from Jekyll. There are bad characters at
- "such as a radiologists"
- "Preferably, the patient"
It's not clear to me how that comes about; I am building the file as a string in Java and saving it as UTF-8 (no BOM). I think the input must be badly coded
Sean McIlvenna (Aug 15 2019 at 21:02):
@Arvind Jagannathan please investigate what the invalid characters might be at those two points as mentioned by Grahame... Maybe we could put some validation into Trifolia-on-FHIR to warn the user of characters like that. Or perhaps just remove bad characters automatically during the export.
Arvind Jagannathan (Aug 15 2019 at 21:33):
@Sean McIlvenna sure thing. I'll look into that. Thanks everyone for the help.
Grahame Grieve (Aug 15 2019 at 21:34):
should be encoded correctly? Should be possible, at least
Last updated: Apr 12 2022 at 19:14 UTC