Uploaded image for project: 'OpenEJB'
  1. OpenEJB
  2. OPENEJB-1304

Singleton bean @PostConstruct method is called before stateless beans are initialized.

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Not A Problem
    • 4.0
    • 4.0
    • None
    • None
    • 2.6.32-22-generic linux, sun jdk 1.6.0_20-b02

    Description

      The applicationInitialization method below fails at the bean initialization. The openEjb server throws a

      .
      .
      .
      [exec] Application could not be deployed: /home/boto/Desktop/galileo/ws_sync1/iroot/target/system/ejbs/iservice.jar
      [exec] org.apache.openejb.OpenEJBException: Creating application failed: /home/boto/Desktop/galileo/ws_sync1/iroot/target/system/ejbs/iservice.jar: Error deploying 'ApplicationImpl'. Exception: class org.apache.openejb.OpenEJBException: Singleton startup failed: ApplicationImpl: javax.ejb.NoSuchEJBException: Singleton failed to initialize: Singleton failed to initialize: Singleton startup failed: ApplicationImpl: javax.ejb.NoSuchEJBException: Singleton failed to initialize: Singleton failed to initialize
      [exec] at org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:673)
      [exec] at org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:449)
      [exec] at org.apache.openejb.assembler.classic.Assembler.buildContainerSystem(Assembler.java:367)
      [exec] at org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:279)
      [exec] at org.apache.openejb.OpenEJB$Instance.<init>(OpenEJB.java:125)
      [exec] at org.apache.openejb.OpenEJB$Instance.<init>(OpenEJB.java:60)
      [exec] at org.apache.openejb.OpenEJB.init(OpenEJB.java:271)
      [exec] at org.apache.openejb.OpenEJB.init(OpenEJB.java:250)
      [exec] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      [exec] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      [exec] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      [exec] at java.lang.reflect.Method.invoke(Method.java:597)
      [exec] at org.apache.openejb.loader.OpenEJBInstance.init(OpenEJBInstance.java:36)
      [exec] at org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:71)
      [exec] at org.apache.openejb.client.LocalInitialContextFactory.init(LocalInitialContextFactory.java:53)
      [exec] at org.apache.openejb.client.LocalInitialContextFactory.getInitialContext(LocalInitialContextFactory.java:42)
      [exec] at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:667)
      [exec] at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:288)
      [exec] at javax.naming.InitialContext.init(InitialContext.java:223)
      [exec] at javax.naming.InitialContext.<init>(InitialContext.java:197)
      [exec] at iserver.iserver.server.ejb.EjbServer.start(EjbServer.java:68)
      [exec] at iserver.iserver.server.ejb.EjbServerThread.run(EjbServerThread.java:45)

      .
      .
      .

      @Singleton
      @Startup
      @Local(IApplicationService.class)
      public class ApplicationImpl implements IApplicationService {
      private static final Logger LOG = Logger.getLogger(ApplicationImpl.class);

      @EJB
      private IUserServiceLocal iusr;

      @Override
      @PostConstruct
      public void applicationInitialization() {
      if (LOG.isInfoEnabled())

      { LOG.info("Starting up the iserver EJB application..."); }

      User root = iusr.findByAccount("root");
      if(root == null) {
      if (LOG.isInfoEnabled())

      { LOG.info("This is the first execution! " + "Creating the default root user."); }

      root = iusr.create("root", "root user", "1234");
      }
      }

      @Override
      @PreDestroy
      public void applicationShutdown()

      { // do nothing }

      }

      Attachments

        1. OPENEJB-1304.patch
          2 kB
          Thiago Veronezi

        Activity

          People

            Unassigned Unassigned
            tveronezi Thiago Veronezi
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: