2 Replies Latest reply on Apr 12, 2012 3:55 PM by fuzzy333

    Can't deserialize Weld proxy to SLSB

    fuzzy333

      Using JBoss 7.1.1, Weld 1.1.5, I'm getting java.lang.ClassNotFoundException: org.jboss.msc.service.ServiceName from [Module "deployment.wicket-ex1.war:main" from Service Module Loader] when deserializing references to SLSB injected by Weld.

       

      I've created a simple test to illustrate:

       

      {code}@Stateless

      public class FooStateless {

      }

       

      @Singleton

      @Startup

      public class StartupSingleton {

       

       

                @Inject

                private FooStateless foo;

       

                @PostConstruct

                public void postConstruct() {

                          deserialize( serialize( foo ) );

                }

       

       

                public byte[] serialize(Object object) {

                          try {

                                    ByteArrayOutputStream out = new ByteArrayOutputStream();

                                    ObjectOutputStream oos = new ObjectOutputStream(out);

                                    oos.writeObject(object);

                                    oos.flush();

                                    oos.close();

                                    return out.toByteArray();

                          } catch( Exception e ) {

                                    throw new RuntimeException( e );

                          }

                }

       

                public Object deserialize(byte[] data) {

                          try {

                                    ByteArrayInputStream in = new ByteArrayInputStream(data);

                                    ObjectInputStream ois = new ObjectInputStream(in);

                                    return ois.readObject();

                          } catch (Exception e) {

                                    throw new RuntimeException( e );

                          }

                }

      }{code}

       

      The full stacktrace is attached. In reality this is causing me trouble in a Wicket application where SLSB are injected into Pages, but the problem is the same.