8 Replies Latest reply on Jun 25, 2004 10:07 PM by dev2gosoft

    NoSuchMethodError on 3.2.4 Deployment startup

      I am trying to deploy a couple of ejb's in the container. I am getting the following backtrace when deploying...

      11:14:29,644 WARN [ServiceController] Problem starting service jboss.j2ee:jndiName=rns/Rmdhist,service=EJB
      RuntimeErrorException: java.lang.NoSuchMethodError: org.apache.bcel.generic.InstructionFactory.createNewArray(Lorg/apache/bcel/generic/Type;S)Lorg/apache/bcel/generic/Instruction;
      Cause: java.lang.NoSuchMethodError: org.apache.bcel.generic.InstructionFactory.createNewArray(Lorg/apache/bcel/generic/Type;S)Lorg/apache/bcel/generic/Instruction;
      at org.jboss.mx.server.ReflectedDispatcher.handleInvocationExceptions(ReflectedDispatcher.java:99)
      at org.jboss.mx.server.ReflectedDispatcher.dispatch(ReflectedDispatcher.java:64)
      at org.jboss.mx.server.Invocation.dispatch(Invocation.java:61)
      at org.jboss.mx.server.Invocation.dispatch(Invocation.java:53)
      at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
      at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:185)
      at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:473)
      at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:837)
      at $Proxy15.start(Unknown Source)
      etc ...

      Now the bcel.jar is in the lib dir. Note that I put all of my ejbs in a separte dir and then have subdirectories 1,2,3 for the deployment order .. In my conf/jboss-service.xml I have

      deploy/,candata/1,candata/2,candata/3,



        • 1. Re: NoSuchMethodError on 3.2.4 Deployment startup
          jae77

          you have a copy of bcel.jar somewhere else on your classpath. check the "lib/endorsed" directory under your jdk install directory to see if it's lurking there.

          • 2. Re: NoSuchMethodError on 3.2.4 Deployment startup

            Nope...

            cd $JAVA_HOME
            find . -name "*.jar"

            ./jre/lib/ext/sunjce_provider.jar
            ./jre/lib/ext/dnsns.jar
            ./jre/lib/ext/localedata.jar
            ./jre/lib/ext/ldapsec.jar
            ./jre/lib/sunrsasign.jar
            ./jre/lib/jce.jar
            ./jre/lib/security/US_export_policy.jar
            ./jre/lib/security/local_policy.jar
            ./jre/lib/jsse.jar
            ./jre/lib/charsets.jar
            ./jre/lib/im/indicim.jar
            ./jre/lib/javaplugin.jar
            ./jre/lib/rt.jar
            ./jre/lib/endorsed/xalan.jar
            ./jre/lib/endorsed/xercesImpl.jar
            ./jre/lib/endorsed/xml-apis.jar
            ./jre/javaws/javaws.jar
            ./jre/javaws/javaws-l10n.jar
            ./lib/htmlconverter.jar
            ./lib/tools.jar
            ./lib/dt.jar


            • 3. Re: NoSuchMethodError on 3.2.4 Deployment startup
              ddurkin

              look in the /jre/lib/endorsed/xalan.jar

              I think I remeber seeing some versions that had bcel classes.

              • 4. Re: NoSuchMethodError on 3.2.4 Deployment startup

                Yup. it's the xalan with bcel stuff in it.

                Thanks everyone for the quick replies...

                • 5. Re: NoSuchMethodError on 3.2.4 Deployment startup
                  dev2gosoft

                  Thanks for this message thread. I find xalan.jar with different files at java 1.4.2_04 lib directories and they are much bigger than xalan.jar files in JBoss3.2.4...

                  What is the solution??? remove the xalan.jar from java_home....?


                  thanks in advance

                  • 6. Re: NoSuchMethodError on 3.2.4 Deployment startup
                    dev2gosoft

                    Here is more details...
                    I have been able to deploy all the stateless Session EJBs . But when I am deploying my first Entity CMP EJB , I get this error.:

                    RuntimeErrorException: java.lang.NoSuchMethodError: org.apache.bcel.generic.InstructionFactory.createNewArray(Lorg/apache/bcel/generic/Type;S)Lorg/apache/bcel/generic/Instruction;
                    Cause: java.lang.NoSuchMethodError: org.apache.bcel.generic.InstructionFactory.createNewArray(Lorg/apache/bcel/generic/Type;S)Lorg/apache/bcel/generic/Instruction;
                    at org.jboss.mx.server.ReflectedDispatcher.handleInvocationExceptions(ReflectedDispatcher.java:99)
                    at org.jboss.mx.server.ReflectedDispatcher.dispatch(ReflectedDispatcher.java:64)
                    at org.jboss.mx.server.Invocation.dispatch(Invocation.java:61)
                    at org.jboss.mx.server.Invocation.dispatch(Invocation.java:53)
                    at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
                    at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:185)
                    at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:473)
                    at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:837)
                    at $Proxy17.start(Unknown Source)
                    at org.jboss.system.ServiceController.start(ServiceController.java:367)
                    at sun.reflect.GeneratedMethodAccessor6.invoke(Unknown Source)
                    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                    at java.lang.reflect.Method.invoke(Method.java:324)
                    at org.jboss.mx.server.ReflectedDispatcher.dispatch(ReflectedDispatcher.java:60)
                    at org.jboss.mx.server.Invocation.dispatch(Invocation.java:61)
                    at org.jboss.mx.server.Invocation.dispatch(Invocation.java:53)
                    at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
                    at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:185)
                    at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:473)
                    at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:176)
                    at $Proxy51.start(Unknown Source)
                    at org.jboss.ejb.EjbModule.startService(EjbModule.java:367)
                    at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:271)
                    at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:221)
                    at sun.reflect.GeneratedMethodAccessor53.invoke(Unknown Source)
                    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                    at java.lang.reflect.Method.invoke(Method.java:324)
                    at org.jboss.mx.server.ReflectedDispatcher.dispatch(ReflectedDispatcher.java:60)
                    at org.jboss.mx.server.Invocation.dispatch(Invocation.java:61)
                    at org.jboss.mx.server.Invocation.dispatch(Invocation.java:53)
                    at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
                    at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:185)
                    at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:473)
                    at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:837)
                    at $Proxy17.start(Unknown Source)
                    at org.jboss.system.ServiceController.start(ServiceController.java:367)
                    at sun.reflect.GeneratedMethodAccessor6.invoke(Unknown Source)
                    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                    at java.lang.reflect.Method.invoke(Method.java:324)
                    at org.jboss.mx.server.ReflectedDispatcher.dispatch(ReflectedDispatcher.java:60)
                    at org.jboss.mx.server.Invocation.dispatch(Invocation.java:61)
                    at org.jboss.mx.server.Invocation.dispatch(Invocation.java:53)
                    at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
                    at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:185)
                    at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:473)
                    at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:176)
                    at $Proxy14.start(Unknown Source)
                    at org.jboss.ejb.EJBDeployer.start(EJBDeployer.java:570)
                    at org.jboss.deployment.MainDeployer.start(MainDeployer.java:836)
                    at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:645)
                    at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:608)
                    at sun.reflect.GeneratedMethodAccessor17.invoke(Unknown Source)
                    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                    at java.lang.reflect.Method.invoke(Method.java:324)
                    at org.jboss.mx.server.ReflectedDispatcher.dispatch(ReflectedDispatcher.java:60)
                    at org.jboss.mx.server.Invocation.dispatch(Invocation.java:61)
                    at org.jboss.mx.server.Invocation.dispatch(Invocation.java:53)
                    at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
                    at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:185)
                    at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:473)
                    at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:176)
                    at $Proxy7.deploy(Unknown Source)
                    at org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymentScanner.java:304)
                    at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.java:478)
                    at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.doScan(AbstractDeploymentScanner.java:201)
                    at org.jboss.deployment.scanner.AbstractDeploymentScanner.startService(AbstractDeploymentScanner.java:274)
                    at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:271)
                    at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:221)
                    at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
                    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                    at java.lang.reflect.Method.invoke(Method.java:324)

                    .........



                    Environment:
                    JBoss 3.2.4
                    Java: jdk 1.4.2_04
                    Eclipse: 2.1.3
                    Win XP SP2 (RC2)


                    I have checked the xalan.jar in jre/lib/endorsed....and it is about 2.75 MB in size and it does not appear to contain references to bcel...stuff

                    the xalan.jar in jboss 3.2.4 lib directory is 1.7 MB and does not appear to have bcel stuff either


                    There is a bcel.jar in jboss lib directory...
                    Am i missing something...????


                    Any help on this will be deeply appreciated

                    • 7. Re: NoSuchMethodError on 3.2.4 Deployment startup
                      iwan_eising

                      I am experiencing the same problem. There's no bcel.jar nor a xalan.jar on my classpath since it is empty. All works fine on JBoss 3.2.3, but deploying the same EAR to 3.2.4 gives me the same exception in BCEL.

                      Copying the bcel.jar and xalan.jar from my 3.2.3 setup to default/lib in my 3.2.4 setup does not solve anything.

                      I read that I need to look for BCEL classes in XALAN, are you talking about any classes or specific ones? The classes I have in xalan.jar are all XALAN classes, or the BCEL classes are misplaced in XALAN's package?

                      Anyway, until 3.2.4 JBoss worked always like a charm and moving the same EAR from 3.2.1 -> 3.2.2 -> 3.2.3 was never a problem, but the move to 3.2.4 seems to do.

                      Hopefully somebody can provide the solution to this problem.

                      Thanks in advance,
                      Iwan

                      • 8. Re: NoSuchMethodError on 3.2.4 Deployment startup
                        dev2gosoft

                        I have posted how i was able to fix the problem under this new topic.

                        http://www.jboss.org/index.html?module=bb&op=viewtopic&t=51178


                        Good luck...if you have futher questions please feel free to post them under this thread