There is a bug in org.apache.bcel.internal.util.InstructionFinder.compilePattern Please also refer to this bug report for more details about dottless i and Turkish .toLowerCase problem. Second comment of the bug report (Submitted On 08- JAN-2006) is very important. http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6240963 I am trying to use ActiveMQ JMS 1.1 Provider but when I am trying to start it on a Windows 2000 SP4 with Turkish Default Locale I have following exception; java.lang.RuntimeException: Instruction unknown: load²nstruction at com.sun.org.apache.bcel.internal.util.InstructionFinder.mapName (InstructionFinder.java:138) at com.sun.org.apache.bcel.internal.util.InstructionFinder.compilePattern (InstructionFinder.java:170) at com.sun.org.apache.bcel.internal.util.InstructionFinder.search (InstructionFinder.java:218) at com.sun.org.apache.bcel.internal.util.InstructionFinder.search (InstructionFinder.java:264) at com.sun.org.apache.xalan.internal.xsltc.compiler.Mode.peepHoleOptimization (Mode.java:1444) at com.sun.org.apache.xalan.internal.xsltc.compiler.Mode.compileApplyTemplates (Mode.java:1058) at com.sun.org.apache.xalan.internal.xsltc.compiler.Stylesheet.compileModes (Stylesheet.java:615) at com.sun.org.apache.xalan.internal.xsltc.compiler.Stylesheet.translate (Stylesheet.java:730) at com.sun.org.apache.xalan.internal.xsltc.compiler.XSLTC.compile (XSLTC.java:335) at com.sun.org.apache.xalan.internal.xsltc.compiler.XSLTC.compile (XSLTC.java:410) at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl.newTemplates (TransformerFactoryImpl.java:791) at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl.newTransform er(TransformerFactoryImpl.java:619) at org.activemq.spring.ActiveMQBeanDefinitionReader.createTransformer (ActiveMQBeanDefinitionReader.java:63) at org.activemq.spring.ActiveMQBeanDefinitionReader.transformDocument (ActiveMQBeanDefinitionReader.java:94) at org.activemq.spring.ActiveMQBeanDefinitionReader.registerBeanDefinitions (ActiveMQBeanDefinitionReader.java:53) at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinition s(XmlBeanDefinitionReader.java:155) at org.activemq.spring.ActiveMQBeanFactory.<init> (ActiveMQBeanFactory.java:86) at org.activemq.spring.ActiveMQBeanFactory.<init> (ActiveMQBeanFactory.java:57) at org.activemq.spring.SpringBrokerContainerFactory.createBrokerContainer (SpringBrokerContainerFactory.java:86) at org.activemq.spring.Main.main(Main.java:71) When I switch to English US defult locale everything works fine. So there are lots of tools and open source projects (like NetBeans) which uses BCEL. This is a big problem for us which working on Turkish Locale. Thanks
Thanks for the report. changed toLowerCase to toLowerCase(Locale.ENGLISH), as use is to search for java instructions, which are always english anyway.
Hi could you tell us in which version this bug is fixed?
Latest bcel release, 5.2 still has this bug. Official jre have the bug in com/sun/org/apache/bcel/internal/util/InstructionFinder.compilePattern. It exists even in latest jre6 and jre1.5.0_21. It is not very hard to modify the bcel source code and load it into bootclasspath before rt.jar but to be clean it needs to be fixed. Will Apache or Sun fix this sometime?
This is fixed in BCEL trunk (so scheduled for 5.3). When/if BCEL gets updated inside the JDK - no idea.