We're using a Java extension function with XALAN, and it exhibits strange
behavior in certain execution contexts. When the Transformer processes a
DOMSource input, all works fine. When the same stylesheet is processed by
feeding a TransformerHandler SAX events, it fails attempting to call the
getLength() method on an instance of
org.apache.xalan.stree.DocumentFragmentImpl, with a
"java.lang.RuntimeException: Function not supported!" error.
The extension function's method signature expects a NodeList as input. It
appears that in the working scenario, the function is passed an instance of
a org.apache.xerces.dom.DocumentFragmentImpl object, whereas in the failure
case, it is passed an instance of
org.apache.xalan.stree.DocumentFragmentImpl. Any known issues/workarounds?
- Rick Bullotta
CTO
Lighthammer Software