XSL Transformation on Domino - same but different

Wednesday, August 23, 2017 at 9:09 AM UTC

Lately I encountered a weird behaviour when it comes to XML handling and transforming in a server side executed code on Domino. My code does the following:

  • grab a document or design element from an NSF
  • export it to XML via the DXLExporter
  • grab the XML and translate it with XSL via a javax.xml.transform.Transformer
  • use the translated XML for further use

I use the XSL Transformer with some options to e.g. ignore the DTD schema that is defined in the exported XML from the exporter as it caused problems. Though I try to ignore it, it seems that it's still used somehow - anyway, it works - as long as your Domino server runs on Windows. In Linux I get this error:

23.08.2017 08:40:40   HTTP JVM: java.io.FileNotFoundException: /local/notesdata/xmlschemas/domino_9_0_1.dtd

This error is comprehensible as the folder xmlschemas is usually located in the program folder of Domino and not a subfolder in the data folder. It's the same in Windows but for some reason the code assumes this location when executed on Linux. My code does not have any static reference to that schema file.

A workaround

My workaround is to create a symlink inside the data folder to the folder in the binaries which is something like /opt/ibm/domino/notes/latest/linux/xmlschemas.

Call for action

This post does not provide a real solution or explanation, yet, but I hope for some clarification - maybe it's worth a PMR. So, if you have any ideas of how to explain this, then please let me know in the comments or drop me a note elsewhere.

Update 24.08.2017

I just created a PMR for this as I could reproduce this with a simplified example in a separate application so I can exclude a problem in our product (which in this case is aveedo). Let's see, what happens - I'll keep you updated.

IBM was able to reproduce the issue and created a new defect report filed under APAR #LO93064 / SPR #TPONARCDU6.

Latest comments to this post

Csaba Kiss wrote on 23.08.2017, 18:59

I am glad to see that I am not the only one who still loves Midnight/Norton Commander. That's the fist thing I install on a new linux installation. 

 Reply to this comment
 Link to this comment
Stephan H. Wissel wrote on 23.08.2017, 12:01

i usually deploy the latest Saxon jar.  This way I have access to xslt 2.0 which makes a lot of stuff easier 

 Reply to this comment
 Link to this comment

Leave a comment right here