Problem compiling an XSLT stylesheet file
shorero2011 Oct 6, 2011 6:38 PMSUMMARY OF PROBLEM: I have an .xsl stylesheet file that compiles fine when I run a standalone program outside the JBoss environment. The file also works fine when I run under JBoss 5 or 6. When my JMX MBean inside JBoss 7 tries to compile the same file, it gets an error that ends with the following exception:
Caused by: javax.xml.transform.TransformerConfigurationException: Could not compile stylesheet
at org.apache.xalan.xsltc.trax.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:832)
at __redirected.__TransformerFactory.newTemplates(__TransformerFactory.java:137)
at com.cst.chetx.core.bean.transform.TransformDataSupport.loadFromUrl(TransformDataSupport.java:215)
at com.cst.chetx.core.bean.transform.TransformDataSupport.loadTemplateSequence(TransformDataSupport.java:269)
... 14 more
Experience with previous versions of JBoss suggests that this error is caused by an undocumented limit on the number of template elements in the single .xsl file; if so, the limit has been dropped down in JBoss 7 from maybe 1000 or so to under 500, which is beginning to be a real problem for me. I can provide more details on exactly how the MBean is getting loaded etc if that would help with answers.
QUESTIONS:
1. Can anybody confirm a limit on the number of templates in an .xsl file? If so, is there any way I can modify or control it from inside the EAR file to allow this stylesheet to compile?
2. Is there any way for a single .ear to use a TransformerFactory other than the one returned by TransformerFactory.getInstance() when I'm running under JBoss 7? I tried using the TransformerFactory.getInstance(className, null) method and plugged in the name of the transformer factory class that I get outside JBoss (com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl), but I get a NoClassDefFound exception.
3. Any other suggestions re how to work around this problem?
ENVIROMENT: (from boot.log)
17:54:23,715 INFO [org.jboss.modules] JBoss Modules version 1.0.2.GA
17:54:25,410 INFO [org.jboss.msc] JBoss MSC version 1.0.1.GA
17:54:25,548 INFO [org.jboss.as] JBoss AS 7.0.2.Final "Arc" starting
17:54:25,550 DEBUG [org.jboss.as.config] Configured system properties:
...
java.runtime.name = Java(TM) SE Runtime Environment
java.runtime.version = 1.7.0-b147
...
java.vm.name = Java HotSpot(TM) 64-Bit Server VM
java.vm.specification.name = Java Virtual Machine Specification
java.vm.specification.vendor = Oracle Corporation
java.vm.specification.version = 1.7
java.vm.vendor = Oracle Corporation
java.vm.version = 21.0-b17
...
uname -a
Linux splitter 2.6.38-11-server #50-Ubuntu SMP Mon Sep 12 21:34:27 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux