1 Reply Latest reply on May 27, 2003 3:08 AM by Bernd Zeitler

    Deployment of EJBs under V3.2.1 failed (works fine under V3.

    Bernhard Löwenstein Newbie

      Hello!

      My EJBs works fine under JBoss 3.2.0RC1, but under JBoss 3.2.1 I always get a deploy error.

      2003-05-26 22:37:00,183 WARN [org.jboss.mx.loading.ClassLoadingTask] Duplicate class found: at.intervista.pvm.info.UserInfo
      Current CS: (file:/C:/Programme/JBoss-3.2.1/server/default/tmp/deploy/server/default/deploy/PVM/PVMEJBeans.ear/37.PVMEJBeans.ear-contents/PVMEntityBeans.jar <no certificates>)
      Duplicate CS: (file:/C:/Programme/JBoss-3.2.1/server/default/lib/PVMBeans.jar <no certificates>)
      ...
      2003-05-26 22:37:01,545 WARN [org.jboss.ejb.EJBDeployer.verifier] EJB spec violation:
      Bean : ManageLogin
      Method : public abstract UserInfo loadUser(String) throws RemoteException
      Section: 7.10.5
      Warning: The methods defined in the remote interface must have a matching method in the bean's class with the same return type.
      2003-05-26 22:37:01,565 WARN [org.jboss.ejb.EJBDeployer.verifier] EJB spec violation:
      Bean : ManageMasterData
      Method : public abstract UserInfo loadUser(long) throws RemoteException
      Section: 7.10.5
      Warning: The methods defined in the remote interface must have a matching method in the bean's class with the same return type.
      2003-05-26 22:37:01,625 WARN [org.jboss.ejb.EJBDeployer.verifier] EJB spec violation:
      Bean : ManageMailing
      Method : public abstract void sendRegistryMail(UserInfo, int) throws MessagingException, RemoteException
      Section: 7.10.5
      Warning: The methods defined in the remote interface must have a matching method in the bean's class with the same name and same number and types of arguments.
      2003-05-26 22:37:01,755 ERROR [org.jboss.deployment.MainDeployer] could not create deployment: file:/C:/Programme/JBoss-3.2.1/server/default/tmp/deploy/server/default/deploy/PVM/PVMEJBeans.ear/37.PVMEJBeans.ear-contents/PVMSessionBeans.jar
      org.jboss.deployment.DeploymentException: Verification of Enterprise Beans failed, see above for error messages.
      at org.jboss.ejb.EJBDeployer.create(EJBDeployer.java:487)
      at org.jboss.deployment.MainDeployer.create(MainDeployer.java:784)
      at org.jboss.deployment.MainDeployer.create(MainDeployer.java:776)
      at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:639)
      at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:613)
      at sun.reflect.GeneratedMethodAccessor28.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:324)
      at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
      at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:549)
      at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:177)
      at $Proxy7.deploy(Unknown Source)
      at org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymentScanner.java:302)
      at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.java:476)
      at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.doScan(AbstractDeploymentScanner.java:200)
      at org.jboss.deployment.scanner.AbstractDeploymentScanner.startService(AbstractDeploymentScanner.java:273)
      at org.jboss.system.ServiceMBeanSupport.start(ServiceMBeanSupport.java:192)
      at sun.reflect.GeneratedMethodAccessor7.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:324)
      at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
      at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:549)
      at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:966)
      at $Proxy0.start(Unknown Source)
      at org.jboss.system.ServiceController.start(ServiceController.java:392)
      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.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
      at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:549)
      at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:177)
      at $Proxy5.start(Unknown Source)
      at org.jboss.deployment.SARDeployer.start(SARDeployer.java:226)
      at org.jboss.deployment.MainDeployer.start(MainDeployer.java:832)
      at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:640)
      at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:613)
      at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:597)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:324)
      at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
      at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:549)
      at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:177)
      at $Proxy6.deploy(Unknown Source)
      at org.jboss.system.server.ServerImpl.doStart(ServerImpl.java:365)
      at org.jboss.system.server.ServerImpl.start(ServerImpl.java:272)
      at org.jboss.Main.boot(Main.java:150)
      at org.jboss.Main$1.run(Main.java:388)
      at java.lang.Thread.run(Thread.java:536)


      I think the first warning is the reason for the failed deployment. Cause, if I remove the package with the duplicate classes the EJB deployment succeeded.

      I can't remove the package with the duplicate classes cause the home and remote interfaces of my session beans needed in a web app are defined there.

      The declaration of the methods is surely correct (remote interface and bean class).

      I hope you can help me!

      Kind regards,
      Bernhard

        • 1. Re: Deployment of EJBs under V3.2.1 failed (works fine under
          Bernd Zeitler Expert

          If you are using one resource in different deployment units you have to deploy the resource once so both can see the same resource (e.g. class).
          If you want to deploy the same resource with every deployment unit (e.g. ear), then you have to configure jboss to use different loader repositories for every unit. For EARs you have to use this in your jboss-app.xml
          [pre]
          <jboss-app>
          <loader-repository>abc.com:loader=my.ear
          <loader-repository-config>java2ParentDelegation=false</loader-repository-config>
          </loader-repository>
          </jboss-app>
          [/pre]

          You can use these tags your jboss-web.xml and jboss.xml, too.

          Greetings,
          Frito