[Libreoffice] Writer : XSLT 2.0 Filters KO in LibreOffice 3.4.3 but OK in 3.3.4

Peter Jentsch pjotr at guineapics.de
Tue Oct 18 13:37:06 PDT 2011


Hi Arnaud,

Am 04.10.2011 17:11, schrieb arnaud.malguy at arkarell.com:
>
> Hi Michael,
>
> Hi Peter,
>
> Thanks for your answers.
>
> I tried to put the implementation name in the <data> node as specified 
> by Peter, but it doesn't work, my package is not loaded when I put 
> "com.sun.star.comp.JAXTHelper" at that place which must contains in 
> fact the name of my filter (if I understand well). When reading code 
> of XSLTFilter.cxx, I saw that the name of the specific implementation 
> is retrieved in msUserData[1] and that stylesheet is retrieved in 
> msUserData[5], it's why I assume that each msUserData corresponds to 
> the sequence of value in the data node, values separated by semi-colon 
> because stylesheet is the sixth entry in this string (ok to 
> msUserData[5] found in code).   And also beacuse the second entry is 
> empty and a comment in code tell that we use this not used user data 
> for specific implementation.
>
> Michael, If I understand you, you tell that XSLT 2 support must be 
> redone. But I think that this support is still here, we only have to 
> find where to set the java implementation to override the default 
> libxslt. Do you confirm Pete ?
>
> Thanks Pete, to have a look on this.
>
I just pushed 2 commits to LO master that fix the problem you encountered.

The configuration of the custom XML filter packages works a little 
different compared to the built-in filters. The 2nd userdata parameter 
currently is just ignored upon importing a package.

The first patch supports importing (but not exporting) the 2nd userdata 
parameter, so you can use the saxon/j based xslt 2.0 aware 
transformation in your filter (but still requires manually editing 
TypeDetection.xcu).

http://cgit.freedesktop.org/libreoffice/core/commit/?id=960f4bdd71c9de19059279d61abb142ddfdac0ce

The second patch adds a simple entry field that lets you edit the 
transformation service that should be used with your filter. If you 
leave it blank, the built-in service (currently libxslt) will be used, 
but you're free to enter any service, like the 
com.sun.star.comp.JAXTHelper thing that uses to saxon9/j internally.

http://cgit.freedesktop.org/libreoffice/core/commit/?id=11fbde8fed1a866c4ec9565d56f5f5034631d8b2

The ui is really the simplest thing that could possibly work, and it 
doesn't do any input validation or whatever, but at least it's there.

If anyone could tell my how to include a simple help snippet for that 
input fields I'd gratefully write a line or two.

If you're in a hurry those patches should apply cleanly to a checkout of 
the 3.4.3 release branch, otherwise they hopefully make it into one of 
the upcoming releases.

Cheers,

Peter


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/libreoffice/attachments/20111018/0548aa4e/attachment.html>


More information about the LibreOffice mailing list