JAXP: Error - Branch target offset too large for short : wM 8 transformSerialXML

I have a XSLT (9321 lines - 416 KB) and a sample XML data that gets compiled and works fine in wM 7.1 when used as XSLT service. This is also working fine with Altova XML Spy.
I am trying to use pub.xslt.Transformations:transformSerialXML with this XSLT as input for formatting my XML, it fails with
“[XSL.0002.9001] JAXP: Error instantiating transformer - Could not compile stylesheet”
error. From the server log I first received
“[XSL.0002.0001W] JAXP: Error - Error checking type of the expression ‘filter-expr(funcall(current, []), [pred(=(step(“child”, 110), literal-expr(NY)))])’” error.
After researching in several forums, i replaced current() with self::node() in the XSLT. But now while trying to run the service I am getting
“JAXP: Error - Branch target offset too large for short” error.
I have also tried removing the special characters in the XSLT and XML - still no luck,
The wM 7 server has transformer Factory of : org.apache.xalan.processor.TransformerFactoryImpl
The wM 8 is : org.apache.xalan.xsltc.trax.SmartTransformerFactoryImpl.
I tried changing the transformerFactorySetting in V8 same as the one in V7 from the home page of WmXSLT package, but this makes no difference - I am still getting the same error.
I am using the same set of jars (XALAN 2.7.0 and xerces 2.7.1) in both the servers.

Can someone tell me what has to be done to resolve this error?
This sounds starnge to me because it works fine in version 7 but not in version 8.
Thanks for your time.

Hi all,
Changing the transformer factory to org.apache.xalan.processor.TransformerFactoryImpl worked.
Earlier while testing, I had made ‘useCompilingProcessor’ to True and forgot to change it when testing with different transformers. (Good that this change in transformer factory does not need a restart of server or reload of WmXSLT package).

After changing the transformer factory, i reverted back all the smaller changes (like removing the special characters, changing the current() to self::node() ) and tested and got successful results.