0 Replies Latest reply on Nov 10, 2009 3:32 AM by cat march

    EJB Remote Invocation Problem

    cat march Newbie


      I have some issues with EJB remote procedure returning. The target application server is a JBoss App Server. In-explicably, the remote call is unable to locate the class being returned and subsequently throws a ClassNotFoundException. After tracing, it seems that the JBoss remoting mechanism is unable to locate the classes despite the dependencies between each plug-in.

      Attempts to resolve this using Buddy Policy (either registered or global) did not work.

      In my Eclipse RCP application, I currently have 4 plug-ins

      n plug-in A (where the EJB interfaces are stored)

      n plug-in B (where the classes being returned by interfaces in A are stored)

      n plug-in C (my RCP main app is stored)

      n plug-in D (the plugin containing the code that will call the interfaces in A.)

      I have set up the plug-in dependencies so that it works this way:

      n plug-in A depends on plug-in B

      n plug-in B has no dependency

      n plug-in C depends on plug-in D

      n plug-in D depends on A

      So the dependency chart looks something like C ¨¤ D ¨¤ A ¨¤ B. I have also added to the MANIFEST.MF the packages needed to be exported as well.

      I am baffled to why the recommended solutions (dependencies and Buddy-Policy) did not work. I am able to get it to work by changing the ContextClassLoader, but frankly, using that will involve a lot of boiler plate code that makes my eyes bleed. I am posting my problem here to see if I can get this resolved without resorting to the ContextClassLoader hack.

      Any advice or solutions will be most appreciated.