1 Reply Latest reply on Aug 14, 2007 1:24 PM by Valtoni Boaventura

    EJBAccessException not marshalled?

    Alejandro Dominguez Newbie

      Hi to all,
      I'm trying out the JBoss security togheter with remote ejb.

      Long story short, the security domain validates my credentials and everything works fine if I provide the right user/password.
      However, if they are not valid, I receive:

      Exception in thread "main" java.lang.reflect.UndeclaredThrowableException
       at $Proxy0.testSecurity(Unknown Source)
       at security.SecurityTest.main(SecurityTest.java:31)
      
      Caused by: java.rmi.MarshalException: Failed to communicate. Problem during marshalling/unmarshalling; nested exception is:
       java.io.InvalidClassException: javax.ejb.EJBAccessException; local class incompatible: stream classdesc serialVersionUID = -3982037377455977398, local class serialVersionUID = 4923220329322198628
      

      etc...

      I changed all my jar references to use those in the /lib directories rather than /client in case it was some different version of Serializable classes, but this didn't help...
      Any ideas?

      Regards

      Alejandro

        • 1. Re: EJBAccessException not marshalled?
          Valtoni Boaventura Newbie

           

          "domyalex" wrote:

          Exception in thread "main" java.lang.reflect.UndeclaredThrowableException
           at $Proxy0.testSecurity(Unknown Source)
           at security.SecurityTest.main(SecurityTest.java:31)
          
          Caused by: java.rmi.MarshalException: Failed to communicate. Problem during marshalling/unmarshalling; nested exception is:
           java.io.InvalidClassException: javax.ejb.EJBAccessException; local class incompatible: stream classdesc serialVersionUID = -3982037377455977398, local class serialVersionUID = 4923220329322198628
          



          Alejandro,

          Sorry for the late post, but i'm in trouble with this in this morning and i'll share with you the solution: simply put off your jarfile containing class "javax.ejb.EJBAccessException" and put the jar from your container. Class compiling generate diferents serialVersionID and appear wich your class is diferent in client or you have 2 classes in your jboss container (1 with your application and the other from the container).

          Hope this was help you!

          Regards,
          Valtoni Boaventura