SUMMARY 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
... 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.
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
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