/ jeuclid Public

# FOP plugin#5

Merged
merged 1 commit into from Feb 15, 2019
Merged

# FOP plugin #5

merged 1 commit into from Feb 15, 2019

## Conversation

This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters

### dubinsky commented Feb 15, 2019

Thank you, @rototor, for all the hard work making JEuclid work with current libraries and JDKs!
I need JEuclid's FOP plugin in my project.
Turns out that local copy of the original sources of the plugin just works using your JEuclid artifact!
In case I am not the last person using the FOP plugin, maybe it can be distributed side-by-side with the core?

Changes:

• restored as-is original Java sources of the FOP plugin;
• did not restore ServiceLoader provider-configuration files under META-INF/services;
with them, plugin would be auto-configured for all FOP runs;
now it can be configured for a specific FopFactory using
new class JEuclidFopFactoryConfigurator's configure() method;
• restored plugin's src/site/site.xml file;
• restored and cleaned up plugin's POM;
• packaging as an artifact that depends on the JEuclid core, not including it in the plugin JAR;
• re-added plugin module to the main POM and brought FOP version up-to-date.

 Restoring FOP plugin: 
 3249f07 
- restored as-is original Java sources of the FOP plugin;
- did not restore ServiceLoader provider-configuration files under META-INF/services;
with them, plugin would be auto-configured for all FOP runs;
now it can be configured for a specific FopFactory using
new class JEuclidFopFactoryConfigurator.configure();
- restored plugin's src/site/site.xml file;
- restored and cleaned up plugin's POM;
- re-added plugin module to the main POM and brought FOP version up-to-date.

### rototor commented Feb 15, 2019

 Looks good to me, I'll try to release this to maven central soon, but I am currently very busy, so it can take a week till I find time.

merged commit c9c8ea9 into rototor:master Feb 15, 2019

### rototor commented Feb 24, 2019

 FYI: I just released version 3.1.14 with the FOP plugin. It should show up soon on maven central.

### dubinsky commented Feb 24, 2019

 It's there, so I can now remove local copy from my DocBook Gradle plugin! Thank you very much!

### philipru commented Oct 23, 2019

 Hi, I just tried to use the jeuclid-fop-3.1.14.jar and jeuclid-core-3.1.14.jar from de.rototor.jeuclid with FOP 2.3 but the MathML is not rendered and I get warnings like the following: WARNING: Unknown formatting object "{http://www.w3.org/1998/Math/MathML}math" encountered (a child of fo:instream-foreign-object}  I'm using XSL-FO like this:  a = b 2 + c [/itex]  The MathML renders if I use FOP 2.2 and the unforked jeuclid-fop-3.1.9.jar from net.sourceforge.jeuclid but I need to use FOP 2.3 and batik 1.10. Do you have any ideas why it wouldn't work? Many thanks Philip

### dubinsky commented Oct 24, 2019

 I just tried to use the jeuclid-fop-3.1.14.jar and jeuclid-core-3.1.14.jar from de.rototor.jeuclid with FOP 2.3 but the MathML is not rendered and I get warnings like the following: WARNING: Unknown formatting object "{http://www.w3.org/1998/Math/MathML}math" encountered (a child of fo:instream-foreign-object}  The MathML renders if I use FOP 2.2 and the unforked jeuclid-fop-3.1.9.jar from net.sourceforge.jeuclid but I need to use FOP 2.3 and batik 1.10. Do you have any ideas why it wouldn't work? FOP plugin is not enabled by default; as mentioned in this pull requests's original description, to enable it you need to call JEuclidFopFactoryConfigurator.configure() for your FopFactory. See https://github.com/rototor/jeuclid/blob/master/jeuclid-fop/src/main/java/net/sourceforge/jeuclid/fop/plugin/JEuclidFopFactoryConfigurator.java If you want to document this better, please create a pull request ;)

### philipru commented Oct 25, 2019

 Thanks so much! I should have seen that. It works perfectly now. Cheers Philip

### dubinsky commented Oct 25, 2019

 Thanks so much! I should have seen that. It works perfectly now. You may still want to make a pull request documenting this for the next person :)

### philipru commented Oct 31, 2019

 Sure. Just to confirm, do you mean I should edit the README.md file?

### dubinsky commented Oct 31, 2019

 @philipru Just to confirm, do you mean I should edit the README.md file? You should edit (or add) a file that you would have seen the instructions in had they been there :) Hopefully the next person will see them there.

### timbsng commented Nov 18, 2019

 @philipru can you please go a bit more in detail for a novice on what you did? Coming from http://jeuclid.sourceforge.net/jeuclid-fop/ , they state all the 'installation' requires is copying jeuclid-core-x.x.x.jar  and jeuclid-fop-x.x.x.jar  into the fop's /lib directory. How does the installation of this fork differ to these instructions? Where did you put JEuclidFopFactoryConfigurator.configure()? Thank you so much in advance!

### philipru commented Nov 18, 2019

 If you have a look under Basic Usage Pattern here: https://xmlgraphics.apache.org/fop/2.4/embedding.html It should work if you add JEuclidFopFactoryConfigurator.configure(fopFactory); after the first line of Step 1. Regards Philip … On Tue, 19 Nov 2019 at 01:48, cheapsmith ***@***.***> wrote: @philipru can you please go a bit more in detail for a novice on what you did? Coming from http://jeuclid.sourceforge.net/jeuclid-fop/ , they state all the 'installation' requires is copying jeuclid-core-x.x.x.jar and jeuclid-fop-x.x.x.jar into the fop's /lib directory. How does the installation of this fork differ to these instructions? Where did you put JEuclidFopFactoryConfigurator.configure()? Thank you so much in advance! — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub <#5?email_source=notifications&email_token=ADH4GMQ5CXHUCRUAMZ4LCZDQUKTMDA5CNFSM4GXTAQ7KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEEKVR6Q#issuecomment-555047162>, or unsubscribe .

### timbsng commented Nov 21, 2019

 Thank you! Just to be sure, this means it will only work with my own Java application? Up to now I've only been using the fop CLI.

### philipru commented Nov 21, 2019

 I'm not sure if you can use it with the command line. I only use it from my own application. … On Fri, 22 Nov 2019 at 00:28, cheapsmith ***@***.***> wrote: Thank you! Just to be sure, this means it will only work with my own Java application? Up to now I've only been using the fop CLI. — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub <#5?email_source=notifications&email_token=ADH4GMQIGONBOMAA26RHEQTQU2EI3A5CNFSM4GXTAQ7KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEE2G7UY#issuecomment-557084627>, or unsubscribe .

### dubinsky commented Dec 1, 2019

 @philipru thank you for updating the README!

### dubinsky commented Dec 1, 2019

 @philipru for my Gradle DocBook plugin I coded an integration between FOP and MathJax that can be used independently of DocBook (or Gradle); this is completely off-topic here, so if you want to play with it, you can talk to me in https://github.com/dubinsky/podval-docbook-gradle or over email :)

mentioned this pull request Feb 28, 2020