I am still getting this error randomly (see stacktrace below).
It seems to appear more consistently when i call the translator from
another application - i use a delegated classloader to invoke it (so
its sandboxed from the environment of the calling application).
I am testing it a bit further -- I noticed that in the XPathResolver
class you dont handle the exception locally, instead you throw it so
it gets pushed up the exception stack for the calling application. Is
there any reason you are not handling this exception locally (I ask
because its much easier to resolve such issues with local exception
handling)...
javax.xml.transform.TransformerException: Prefix must resolve to a namespace:
at com.sun.org.apache.xpath.internal.compiler.XPathParser.error(XPathParser.java:602)
at com.sun.org.apache.xpath.internal.compiler.Lexer.mapNSTokens(Lexer.java:638)
at com.sun.org.apache.xpath.internal.compiler.Lexer.tokenize(Lexer.java:265)
at com.sun.org.apache.xpath.internal.compiler.Lexer.tokenize(Lexer.java:96)
at com.sun.org.apache.xpath.internal.compiler.XPathParser.initXPath(XPathParser.java:108)
at com.sun.org.apache.xpath.internal.XPath.<init>(XPath.java:162)
at com.sun.org.apache.xpath.internal.XPath.<init>(XPath.java:198)
at com.sun.org.apache.xpath.internal.jaxp.XPathImpl.compile(XPathImpl.java:394)
at org.un.bungeni.translators.utility.xpathresolver.XPathResolver.evaluate(XPathResolver.java:92)
at org.un.bungeni.translators.odttoakn.translator.OAPipelineResolver.resolve(OAPipelineResolver.java:103)
at org.un.bungeni.translators.odttoakn.translator.OATranslator.buildXSLT(OATranslator.java:361)
at org.un.bungeni.translators.odttoakn.translator.OATranslator.translate(OATranslator.java:129)
at org.bungeni.plugins.translator.OdtTranslate.exec(OdtTranslate.java:61)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.bungeni.editordispatch.test.run(test.java:74)
at org.bungeni.editordispatch.test.main(test.java:83)
--------------- linked to ------------------
javax.xml.xpath.XPathExpressionException
at com.sun.org.apache.xpath.internal.jaxp.XPathImpl.compile(XPathImpl.java:402)
at org.un.bungeni.translators.utility.xpathresolver.XPathResolver.evaluate(XPathResolver.java:92)
at org.un.bungeni.translators.odttoakn.translator.OAPipelineResolver.resolve(OAPipelineResolver.java:103)
at org.un.bungeni.translators.odttoakn.translator.OATranslator.buildXSLT(OATranslator.java:361)
at org.un.bungeni.translators.odttoakn.translator.OATranslator.translate(OATranslator.java:129)
at org.bungeni.plugins.translator.OdtTranslate.exec(OdtTranslate.java:61)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.bungeni.editordispatch.test.run(test.java:74)
at org.bungeni.editordispatch.test.main(test.java:83)