I also have been unsuccessful at getting oXygen/Calabash/XEP configured to run an XSL-FO transform, and would be very grateful for any help. I do have XEP (v4.18-20100322) installed and running with no problems within oXygen (v11.2 build 2010041213) transformation scenarios.
The error I'm getting is "
[Calabash XProc] com/renderx/xep/FormatterImpl", and at this point I'm not sure whether the problem is with the XProc script or with the configuration of oXygen/Calabash/XEP.
I have edited the
/lib/xproc/calabash/engine.xml file to uncomment the pointers to the XEP library files, but have noted that one of the files ("patch.jar") does not exist in the XEP/lib directory (also, there are several jar files in that directory which are not referenced in the Calabash configuration file). My XEP directory is a sibling of my oXygen directory, and I assume that the working directory is that containing the Calabash config file, so I changed the file paths:
- Code: Select all
<library name="../../../../XEP/lib/patch.jar"/>
<library name="../../../../XEP/lib/xep.jar"/>
<library name="../../../../XEP/lib/xt.jar"/>
<system-property name="com.renderx.xep.CONFIG" file="../../../../XEP/xep.xml"/>
I've tried several combinations of removing the reference to the "patch.jar" file and adding references to the other jar files in the XEP/lib directory.
The XProc script I'm working with:
- Code: Select all
<?xml version="1.0" encoding="UTF-8"?>
<p:declare-step xmlns:p="http://www.w3.org/ns/xproc" version="1.0" name="galley_biblio">
<p:input port="source" primary="true">
<p:document href="../../../driver.xml"></p:document>
</p:input>
<p:output port="result">
<p:pipe step="xep" port="result"/>
</p:output>
<p:xslt name="bibliography-rend">
<p:input port="source"/>
<p:input port="stylesheet">
<p:document href="../!parts/bibliography-rend.xsl"/>
</p:input>
<p:input port="parameters"><p:empty/></p:input>
</p:xslt>
<p:xslt name="bibliography-pdf">
<p:input port="source">
<p:pipe port="result" step="bibliography-rend"/>
</p:input>
<p:input port="stylesheet">
<p:document href="../!parts/bibliography-pdf.xsl"/>
</p:input>
<p:input port="parameters"><p:empty/></p:input>
</p:xslt>
<p:xsl-formatter name="xep" href="../xoutput/bibliography.pdf" content-type="application/pdf">
<p:input port="source">
<p:pipe port="result" step="bibliography-pdf"/>
</p:input>
<p:input port="parameters"><p:empty/></p:input>
</p:xsl-formatter>
</p:declare-step>
I also tried a new installation of oXygen (build 2010051111), with a fresh installation of XEP (v4.18-20100322) in the oXygen/tools/ directory, and uncommented the XEP references in the Calabash configuration file. When I tried to run the XProc within this installation, I received this error:
- Code: Select all
loader constraint violation: when resolving method "net.sf.saxon.s9api.DocumentBuilder.build(Ljavax/xml/transform/Source;)Lnet/sf/saxon/s9api/XdmNode;" the class loader (instance of ro/sync/util/l) of the current class, com/xmlcalabash/core/XProcConfiguration, and the class loader (instance of ro/sync/util/yb) for resolved class, net/sf/saxon/s9api/DocumentBuilder, have different Class objects for the type javax/xml/transform/Source used in the signature
I'd be very grateful if someone could point out the error of my ways...