You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by "Thiago Veronezi (JIRA)" <ji...@apache.org> on 2010/08/02 01:27:17 UTC
[jira] Resolved: (OPENEJB-1304) Singleton bean @PostConstruct
method is called before stateless beans are initialized.
[ https://issues.apache.org/jira/browse/OPENEJB-1304?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Thiago Veronezi resolved OPENEJB-1304.
--------------------------------------
Resolution: Not A Problem
We should use the dependsOn feature.
http://openejb.979440.n4.nabble.com/patch-for-review-td2267551.html#a2267551
> Singleton bean @PostConstruct method is called before stateless beans are initialized.
> --------------------------------------------------------------------------------------
>
> Key: OPENEJB-1304
> URL: https://issues.apache.org/jira/browse/OPENEJB-1304
> Project: OpenEJB
> Issue Type: Bug
> Affects Versions: 3.2
> Environment: 2.6.32-22-generic linux, sun jdk 1.6.0_20-b02
> Reporter: Thiago Veronezi
> Fix For: 3.2
>
> Attachments: OPENEJB-1304.patch
>
>
> 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
> }
> }
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.