Uploaded image for project: 'JBoss Enterprise Application Platform 4 and 5'
  1. JBoss Enterprise Application Platform 4 and 5
  2. JBPAPP-1601

Migrate EJBTHREE-1122 - Bean with multiple definitions of the same @Local or @Remote interface fails to deploy

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Major
    • 4.2.0.GA_CP06, 4.3.0.GA_CP04, 4.3.0.GA_CP04_FP01
    • EJB
    • None
    • Hide

      Refactor the application so that it uses delegation instead of inheritance.

      Show
      Refactor the application so that it uses delegation instead of inheritance.

    Description

      We have a customer that is writing a SLSB that implements an interface and also extends a base class that implements this interface.

      They are getting the error...

      (01/14 12:40:36:723):

      {main}

      [org.jboss.system.ServiceController] [WARN] Problem starting service jboss.j2ee:jar=80basServerActiveDirectoryProxy.jar,name=ActiveDirectoryAuthenticatorProxyBean,service=EJB3
      java.lang.IllegalArgumentException: repeated interface: com.rim.bes.bas.activedirectory.authentication.ActiveDirectoryAuthenticator
      at java.lang.reflect.Proxy.getProxyClass(Proxy.java:370)
      at org.jboss.ejb3.stateless.BaseStatelessProxyFactory.init(BaseStatelessProxyFactory.java:166)
      at org.jboss.ejb3.stateless.StatelessRemoteProxyFactory.init(StatelessRemoteProxyFactory.java:114)
      at org.jboss.ejb3.stateless.BaseStatelessProxyFactory.start(BaseStatelessProxyFactory.java:212)
      at org.jboss.ejb3.stateless.StatelessRemoteProxyFactory.start(StatelessRemoteProxyFactory.java:121)
      at org.jboss.ejb3.ProxyDeployer.start(ProxyDeployer.java:83)
      at org.jboss.ejb3.SessionContainer.start(SessionContainer.java:157)
      at org.jboss.ejb3.stateless.StatelessContainer.start(StatelessContainer.java:96)
      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:585)
      at org.jboss.ejb3.ServiceDelegateWrapper.startService(ServiceDelegateWrapper.java:103)
      at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:289)
      at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:245)
      at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:585)
      at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
      at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
      at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
      at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
      at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
      at org.jboss.system.server.jmx.LazyMBeanServer.invoke(LazyMBeanServer.java:291)
      at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:978)
      at $Proxy0.start(Unknown Source)

      ------------------------------------------
      If a bean implements an interface designated as @Local (or @Remote) and it extends a base which implements the same interface, the interface is reported multiple times. Thus the ProxyFactory fails to start.

      ...
      at java.lang.reflect.Proxy.getProxyClass(Proxy.java:370)
      at org.jboss.ejb3.stateful.BaseStatefulProxyFactory.init(BaseStatefulProxyFactory.java:93)
      at org.jboss.ejb3.stateful.BaseStatefulProxyFactory.start(BaseStatefulProxyFactory.java:99)
      at org.jboss.ejb3.stateful.StatefulLocalProxyFactory.start(StatefulLocalProxyFactory.java:93)
      at org.jboss.ejb3.session.ProxyDeployer.start(ProxyDeployer.java:90)
      at org.jboss.ejb3.session.SessionContainer.start(SessionContainer.java:211)
      at org.jboss.ejb3.stateful.StatefulContainer.start(StatefulContainer.java:140)

      Attachments

        Issue Links

          Activity

            People

              rhn-engineering-cdewolf Carlo de Wolf
              rhn-support-jhowell William Howell
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: