AntennaHouse / pdf5-ml

Antenna House PDF5-ML DITA-OT Plug-in
23 stars 9 forks source link

Saxon error about Java calls in index processing #32

Closed robander closed 6 years ago

robander commented 6 years ago

Recent versions of DITA-OT use a newer version of Saxon, which now fails on this line -- an external Java call for index processing: https://github.com/AntennaHouse/pdf5-ml/blob/master/com.antennahouse.pdf5.ml/xsl/dita2fo_indexi18n.xsl#L38

We have those libraries working in an older version of DITA-OT with the older version of Saxon. In DITA-OT 3.1, I get the following failure:

     [xslt] C:\DITA-OT\3.1\plugins\com.antennahouse.pdf5.ml\xsl\dita2fo_indexi18n.xs
l:38:0: Fatal Error! Cannot find a 3-argument function named {java:jp.co.antenna
.ah_i18n_index.IndexSortSaxon9}indexSortSaxon9(). Reflexive calls to Java method
s are not available under Saxon-HE

It looks like this is expected, and functions like this are now supposed to be written as integrated extensions. Several results come up when searching for "Reflexive calls to Java methods", most lead back to the Saxon docs: http://saxonica.com/html/documentation/extensibility/integratedfunctions/

Do you know if there are plans to update this code to work with Saxon-HE in newer versions of DITA-OT?

ToshihikoMakita commented 6 years ago

This is written as limitations in the following page: SYSTEM REQUIREMENT http://www.antennahouse.com/antenna1/i18n-index-library/

Saxon B-9.1 allows external Java function call but Saxon 9.1 or later does not allow it in HE edition. If you want to use I18n Index Library in DITA-OT 3.x, you should prepare Saxon 9.x PE/EE edition.

robander commented 6 years ago

Thanks, I understand. If there are no plans to update the process to use integrated functions, then I think you can close this.