3 Replies Latest reply on Feb 26, 2008 7:19 PM by System Administrator

    Error invoking ejbTimeout

    System Administrator Expert

      seeing the following when JBoss starts up and deploys my Seam2.0 app.  What does this mean and what is causing this?


      14:34:23,737 ERROR [TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
      14:34:23,737 ERROR [TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
      14:34:23,737 ERROR [TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
      14:34:23,737 ERROR [TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
      14:34:23,737 ERROR [TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
      14:34:23,753 ERROR [TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
      14:34:23,753 ERROR [TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
      14:34:23,784 ERROR [TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
      14:34:23,784 ERROR [TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
      14:34:23,784 ERROR [TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
      14:34:23,815 ERROR [TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
      14:34:23,830 ERROR [TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
      14:34:23,830 ERROR [TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
      14:34:23,846 ERROR [TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
      14:34:23,892 ERROR [TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
      14:34:23,907 ERROR [TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
      14:34:23,923 ERROR [TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
      14:34:23,938 ERROR [TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
      14:34:23,954 ERROR [TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
      14:34:23,954 ERROR [TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
      14:34:23,985 ERROR [TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
      14:34:23,985 ERROR [TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
      14:34:23,985 ERROR [TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
      14:34:24,000 ERROR [TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
      14:34:24,000 ERROR [TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
      14:34:24,078 ERROR [TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
      14:34:24,093 ERROR [TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
      14:34:24,124 ERROR [TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
      



      then i'm seeing:


      14:34:48,554 INFO  [Server] JBoss (MX MicroKernel) [4.2.1.GA (build: SVNTag=JBoss_4_2_1_GA date=200707131605)] Started in 1m:3s:753ms
      14:35:23,853 ERROR [TimerImpl] Error invoking ejbTimeout: javax.ejb.EJBException: java.lang.NullPointerException
      14:35:23,853 ERROR [TimerImpl] Error invoking ejbTimeout: javax.ejb.EJBException: java.lang.NullPointerException
      14:36:23,844 ERROR [TimerImpl] Error invoking ejbTimeout: javax.ejb.EJBException: java.lang.NullPointerException
      14:36:23,875 ERROR [TimerImpl] Error invoking ejbTimeout: javax.ejb.EJBException: java.lang.NullPointerException
      14:37:23,882 ERROR [TimerImpl] Error invoking ejbTimeout: javax.ejb.EJBException: java.lang.NullPointerException
      14:37:23,882 ERROR [TimerImpl] Error invoking ejbTimeout: javax.ejb.EJBException: java.lang.NullPointerException

        • 1. Re: Error invoking ejbTimeout
          System Administrator Expert

          I re-extracted JBoss4.2.1.GA and re-deployed the same app (no changes otherwise).


          The server.log is clean after startup.


          What happens when Seam creates a timer object/service when a client calls a @Asynchronous annotated method in a session bean?


          Is JBoss saving this scheduling info in a properties or xml file somewhere?  The EJB3 core spec is apparently leaving this detail up to the vendor implementations (correct me if I'm wrong).


          According to JSR220 - section 18.2.2:



          The enterprise bean class of a bean that is to be registered with the timer service for timer callbacks
          must provide a timeout callback method.  This method may be a method annotated with the Timeout annotation (or a method specified as a timeout
          method in the deployment descriptor) or the bean may implement the javax.ejb.TimedObject
          interface. This interface has a single method, ejbTimeout.

          This is directly related to the errors I was seeing in the server.log in my original post.  Is there a Seam class that is implementing the TimedObject interface?


          There is no reference to ejbTimeout in the Seam ref doc so I'm wondering how does the @Asynchronous (and related) annotations deal with this?  There is no @Timeout method in the seampay example.


          ???

          • 2. Re: Error invoking ejbTimeout
            System Administrator Expert

            I reproduced the error after running a test case:



            Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application

            I see above error repeatedly now on startup of Jboss.


            partial server.log output:


            2008-02-25 16:44:41,138 DEBUG [org.jboss.ejb3.stateful.StatefulDelegateWrapper] Starting jboss.j2ee:ear=SecurityAuditPOC.ear,jar=jboss-seam.jar,name=EjbSynchronizations,service=EJB3
            2008-02-25 16:44:41,138 DEBUG [org.jboss.ejb3.tx.UserTransactionImpl] new UserTx: org.jboss.ejb3.tx.UserTransactionImpl@1e5348f
            2008-02-25 16:44:41,153 ERROR [org.jboss.ejb.txtimer.TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
            2008-02-25 16:44:41,153 DEBUG [org.jboss.ejb.txtimer.TimerImpl] Timer was not registered with Tx, resetting state: [id=4,target=[target=jboss.j2ee:service=EJB3,ear=SecurityAuditPOC.ear,jar=jboss-seam.jar,name=TimerServiceDispatcher],remaining=354399,periode=600060,in_timeout]
            2008-02-25 16:44:41,153 DEBUG [org.jboss.ejb.txtimer.TimerImpl] setTimerState: active
            2008-02-25 16:44:41,153 ERROR [org.jboss.ejb.txtimer.TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
            2008-02-25 16:44:41,153 DEBUG [org.jboss.ejb.txtimer.TimerImpl] Timer was not registered with Tx, resetting state: [id=1,target=[target=jboss.j2ee:service=EJB3,ear=SecurityAuditPOC.ear,jar=jboss-seam.jar,name=TimerServiceDispatcher],remaining=237849,periode=600060,in_timeout]
            2008-02-25 16:44:41,153 DEBUG [org.jboss.ejb.txtimer.TimerImpl] setTimerState: active
            2008-02-25 16:44:41,153 ERROR [org.jboss.ejb.txtimer.TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
            2008-02-25 16:44:41,153 DEBUG [org.jboss.ejb.txtimer.TimerImpl] Timer was not registered with Tx, resetting state: [id=3,target=[target=jboss.j2ee:service=EJB3,ear=SecurityAuditPOC.ear,jar=jboss-seam.jar,name=TimerServiceDispatcher],remaining=354274,periode=600060,in_timeout]
            2008-02-25 16:44:41,153 DEBUG [org.jboss.ejb.txtimer.TimerImpl] setTimerState: active
            2008-02-25 16:44:41,153 ERROR [org.jboss.ejb.txtimer.TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
            2008-02-25 16:44:41,153 DEBUG [org.jboss.ejb.txtimer.TimerImpl] Timer was not registered with Tx, resetting state: [id=2,target=[target=jboss.j2ee:service=EJB3,ear=SecurityAuditPOC.ear,jar=jboss-seam.jar,name=TimerServiceDispatcher],remaining=238036,periode=600060,in_timeout]
            2008-02-25 16:44:41,153 DEBUG [org.jboss.ejb.txtimer.TimerImpl] setTimerState: active



            more output from console:


            16:44:06,821 INFO  [Server] Starting JBoss (MX MicroKernel)...
            16:44:06,821 INFO  [Server] Release ID: JBoss [Trinity] 4.2.1.GA (build: SVNTag=JBoss_4_2_1_GA date=200707131605)
            16:44:06,821 INFO  [Server] Home Dir: C:\jboss-4.2.1.GA
            16:44:06,821 INFO  [Server] Home URL: file:/C:/jboss-4.2.1.GA/
            16:44:06,821 INFO  [Server] Patch URL: null
            16:44:06,821 INFO  [Server] Server Name: default
            16:44:06,821 INFO  [Server] Server Home Dir: C:\jboss-4.2.1.GA\server\default
            16:44:06,821 INFO  [Server] Server Home URL: file:/C:/jboss-4.2.1.GA/server/default/
            16:44:06,821 INFO  [Server] Server Log Dir: C:\jboss-4.2.1.GA\server\default\log
            16:44:06,821 INFO  [Server] Server Temp Dir: C:\jboss-4.2.1.GA\server\default\tmp
            16:44:06,821 INFO  [Server] Root Deployment Filename: jboss-service.xml
            16:44:07,149 INFO  [ServerInfo] Java version: 1.5.0_11,Sun Microsystems Inc.
            16:44:07,149 INFO  [ServerInfo] Java VM: Java HotSpot(TM) Client VM 1.5.0_11-b03,Sun Microsystems Inc.
            16:44:07,149 INFO  [ServerInfo] OS-System: Windows XP 5.1,x86
            16:44:08,617 INFO  [Server] Core system initialized
            16:44:11,319 INFO  [WebService] Using RMI server codebase: http://127.0.0.1:8083/
            16:44:11,319 INFO  [Log4jService$URLWatchTimerTask] Configuring from URL: resource:jboss-log4j.xml
            16:44:12,053 INFO  [TransactionManagerService] JBossTS Transaction Service (JTA version) - JBoss Inc.
            16:44:12,053 INFO  [TransactionManagerService] Setting up property manager MBean and JMX layer
            16:44:12,365 INFO  [TransactionManagerService] Starting recovery manager
            16:44:12,521 INFO  [TransactionManagerService] Recovery manager started
            16:44:12,521 INFO  [TransactionManagerService] Binding TransactionManager JNDI Reference
            16:44:16,597 INFO  [EJB3Deployer] Starting java:comp multiplexer
            16:44:19,254 INFO  [ServiceEndpointManager] jbossws-1.2.1.GA (build=200704151756)
            16:44:21,770 INFO  [AprLifecycleListener] The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files\MyEclipse 6.0\bin
            16:44:21,927 INFO  [Http11Protocol] Initializing Coyote HTTP/1.1 on http-127.0.0.1-8080
            16:44:21,927 INFO  [AjpProtocol] Initializing Coyote AJP/1.3 on ajp-127.0.0.1-8009
            16:44:21,927 INFO  [Catalina] Initialization processed in 524 ms
            16:44:21,927 INFO  [StandardService] Starting service jboss.web
            16:44:21,942 INFO  [StandardEngine] Starting Servlet Engine: JBossWeb/2.0.0.GA
            16:44:22,052 INFO  [Catalina] Server startup in 119 ms
            16:44:22,255 INFO  [TomcatDeployer] deploy, ctxPath=/, warUrl=.../deploy/jboss-web.deployer/ROOT.war/
            16:44:23,474 INFO  [TomcatDeployer] deploy, ctxPath=/invoker, warUrl=.../deploy/http-invoker.sar/invoker.war/
            16:44:23,927 INFO  [TomcatDeployer] deploy, ctxPath=/jbossws, warUrl=.../tmp/deploy/tmp46653jbossws-context-exp.war/
            16:44:24,193 INFO  [TomcatDeployer] deploy, ctxPath=/jbossmq-httpil, warUrl=.../deploy/jms/jbossmq-httpil.sar/jbossmq-httpil.war/
            16:44:26,257 INFO  [TomcatDeployer] deploy, ctxPath=/web-console, warUrl=.../deploy/management/console-mgr.sar/web-console.war/
            16:44:27,319 INFO  [MailService] Mail Service bound to java:/Mail
            16:44:27,726 INFO  [RARDeployment] Required license terms exist, view META-INF/ra.xml in .../deploy/jboss-ha-local-jdbc.rar
            16:44:27,835 INFO  [RARDeployment] Required license terms exist, view META-INF/ra.xml in .../deploy/jboss-ha-xa-jdbc.rar
            16:44:27,913 INFO  [RARDeployment] Required license terms exist, view META-INF/ra.xml in .../deploy/jboss-local-jdbc.rar
            16:44:28,007 INFO  [RARDeployment] Required license terms exist, view META-INF/ra.xml in .../deploy/jboss-xa-jdbc.rar
            16:44:28,132 INFO  [RARDeployment] Required license terms exist, view META-INF/ra.xml in .../deploy/jms/jms-ra.rar
            16:44:28,210 INFO  [RARDeployment] Required license terms exist, view META-INF/ra.xml in .../deploy/quartz-ra.rar
            16:44:28,226 INFO  [QuartzResourceAdapter] start quartz!!!
            16:44:28,351 INFO  [SimpleThreadPool] Job execution threads will use class loader of thread: main
            16:44:28,414 INFO  [QuartzScheduler] Quartz Scheduler v.1.5.2 created.
            16:44:28,414 INFO  [RAMJobStore] RAMJobStore initialized.
            16:44:28,414 INFO  [StdSchedulerFactory] Quartz scheduler 'DefaultQuartzScheduler' initialized from default resource file in Quartz package: 'quartz.properties'
            16:44:28,414 INFO  [StdSchedulerFactory] Quartz scheduler version: 1.5.2
            16:44:28,414 INFO  [QuartzScheduler] Scheduler DefaultQuartzScheduler_$_NON_CLUSTERED started.
            16:44:28,773 INFO  [ConnectionFactoryBindingService] Bound ConnectionManager 'jboss.jca:service=DataSourceBinding,name=SecurityAuditPOCDatasource' to JNDI name 'java:SecurityAuditPOCDatasource'
            16:44:29,992 INFO  [ConnectionFactoryBindingService] Bound ConnectionManager 'jboss.jca:service=DataSourceBinding,name=DefaultDS' to JNDI name 'java:DefaultDS'
            16:44:30,477 INFO  [A] Bound to JNDI name: queue/A
            16:44:30,477 INFO  [B] Bound to JNDI name: queue/B
            16:44:30,477 INFO  [C] Bound to JNDI name: queue/C
            16:44:30,477 INFO  [D] Bound to JNDI name: queue/D
            16:44:30,493 INFO  [ex] Bound to JNDI name: queue/ex
            16:44:30,524 INFO  [testTopic] Bound to JNDI name: topic/testTopic
            16:44:30,524 INFO  [securedTopic] Bound to JNDI name: topic/securedTopic
            16:44:30,524 INFO  [testDurableTopic] Bound to JNDI name: topic/testDurableTopic
            16:44:30,524 INFO  [testQueue] Bound to JNDI name: queue/testQueue
            16:44:30,602 INFO  [UILServerILService] JBossMQ UIL service available at : /127.0.0.1:8093
            16:44:30,680 INFO  [DLQ] Bound to JNDI name: queue/DLQ
            16:44:30,962 INFO  [ConnectionFactoryBindingService] Bound ConnectionManager 'jboss.jca:service=ConnectionFactoryBinding,name=JmsXA' to JNDI name 'java:JmsXA'
            16:44:31,040 INFO  [TomcatDeployer] deploy, ctxPath=/jmx-console, warUrl=.../deploy/jmx-console.war/
            16:44:31,399 INFO  [EARDeployer] Init J2EE application: file:/C:/jboss-4.2.1.GA/server/default/deploy/SecurityAuditPOC.ear
            16:44:36,292 INFO  [JmxKernelAbstraction] creating wrapper delegate for: org.jboss.ejb3.entity.PersistenceUnitDeployment
            16:44:36,292 INFO  [JmxKernelAbstraction] installing MBean: persistence.units:ear=SecurityAuditPOC.ear,jar=SecurityAuditPOC.jar,unitName=SecurityAuditPOC with dependencies:
            16:44:36,292 INFO  [JmxKernelAbstraction]      jboss.jca:name=SecurityAuditPOCDatasource,service=DataSourceBinding
            16:44:36,323 INFO  [PersistenceUnitDeployment] Starting persistence unit persistence.units:ear=SecurityAuditPOC.ear,jar=SecurityAuditPOC.jar,unitName=SecurityAuditPOC
            16:44:36,401 INFO  [Version] Hibernate EntityManager 3.2.1.GA
            16:44:36,433 INFO  [Version] Hibernate Annotations 3.2.1.GA
            16:44:36,448 INFO  [Environment] Hibernate 3.2.4.sp1
            16:44:36,464 INFO  [Environment] hibernate.properties not found
            16:44:36,464 INFO  [Environment] Bytecode provider name : javassist
            16:44:36,480 INFO  [Environment] using JDK 1.4 java.sql.Timestamp handling
            16:44:36,808 INFO  [Ejb3Configuration] found EJB3 Entity bean: com.cox.model.Customer
            16:44:36,808 INFO  [Ejb3Configuration] found EJB3 Entity bean: com.cox.model.Dummypoc
            16:44:36,808 INFO  [Ejb3Configuration] found EJB3 Entity bean: com.cox.model.Payment
            16:44:36,808 INFO  [Ejb3Configuration] found EJB3 Entity bean: com.cox.model.SecurityRole
            16:44:36,902 INFO  [Configuration] Reading mappings from resource : META-INF/orm.xml
            16:44:36,902 INFO  [Ejb3Configuration] [PersistenceUnit: SecurityAuditPOC] no META-INF/orm.xml found
            16:44:37,011 INFO  [AnnotationBinder] Binding entity from annotated class: com.cox.model.Customer
            16:44:37,152 INFO  [EntityBinder] Bind entity com.cox.model.Customer on table CUSTOMER
            16:44:37,355 INFO  [AnnotationBinder] Binding entity from annotated class: com.cox.model.Dummypoc
            16:44:37,355 INFO  [EntityBinder] Bind entity com.cox.model.Dummypoc on table DUMMYPOC
            16:44:37,386 INFO  [AnnotationBinder] Binding entity from annotated class: com.cox.model.Payment
            16:44:37,386 INFO  [EntityBinder] Bind entity com.cox.model.Payment on table PAYMENT
            16:44:37,402 INFO  [AnnotationBinder] Binding entity from annotated class: com.cox.model.SecurityRole
            16:44:37,402 INFO  [EntityBinder] Bind entity com.cox.model.SecurityRole on table SECURITY_ROLE
            16:44:37,605 INFO  [CollectionBinder] Mapping collection: com.cox.model.Customer.payments -> PAYMENT
            16:44:37,730 INFO  [ConnectionProviderFactory] Initializing connection provider: org.hibernate.ejb.connection.InjectedDataSourceConnectionProvider
            16:44:37,746 INFO  [InjectedDataSourceConnectionProvider] Using provided datasource
            16:44:38,512 INFO  [SettingsFactory] RDBMS: Microsoft SQL Server, version: 9.00.3054
            16:44:38,512 INFO  [SettingsFactory] JDBC driver: Microsoft SQL Server 2005 JDBC Driver, version: 1.2.2828.100
            16:44:38,574 INFO  [Dialect] Using dialect: org.hibernate.dialect.SQLServerDialect
            16:44:38,605 INFO  [TransactionFactoryFactory] Transaction strategy: org.hibernate.ejb.transaction.JoinableCMTTransactionFactory
            16:44:38,605 INFO  [TransactionManagerLookupFactory] instantiating TransactionManagerLookup: org.hibernate.transaction.JBossTransactionManagerLookup
            16:44:38,605 INFO  [TransactionManagerLookupFactory] instantiated TransactionManagerLookup
            16:44:38,605 INFO  [SettingsFactory] Automatic flush during beforeCompletion(): disabled
            16:44:38,605 INFO  [SettingsFactory] Automatic session close at end of transaction: disabled
            16:44:38,605 INFO  [SettingsFactory] Scrollable result sets: enabled
            16:44:38,605 INFO  [SettingsFactory] JDBC3 getGeneratedKeys(): enabled
            16:44:38,605 INFO  [SettingsFactory] Connection release mode: auto
            16:44:38,621 INFO  [SettingsFactory] Default schema: dbo
            16:44:38,621 INFO  [SettingsFactory] Default catalog: boIcomsSecurityAuditPOC
            16:44:38,621 INFO  [SettingsFactory] Default batch fetch size: 1
            16:44:38,621 INFO  [SettingsFactory] Generate SQL with comments: disabled
            16:44:38,621 INFO  [SettingsFactory] Order SQL updates by primary key: disabled
            16:44:38,621 INFO  [SettingsFactory] Order SQL inserts for batching: disabled
            16:44:38,621 INFO  [SettingsFactory] Query translator: org.hibernate.hql.ast.ASTQueryTranslatorFactory
            16:44:38,621 INFO  [ASTQueryTranslatorFactory] Using ASTQueryTranslatorFactory
            16:44:38,621 INFO  [SettingsFactory] Query language substitutions: {}
            16:44:38,621 INFO  [SettingsFactory] JPA-QL strict compliance: enabled
            16:44:38,621 INFO  [SettingsFactory] Second-level cache: enabled
            16:44:38,621 INFO  [SettingsFactory] Query cache: disabled
            16:44:38,621 INFO  [SettingsFactory] Cache provider: org.hibernate.cache.HashtableCacheProvider
            16:44:38,637 INFO  [SettingsFactory] Optimize cache for minimal puts: disabled
            16:44:38,637 INFO  [SettingsFactory] Cache region prefix: SecurityAuditPOC_ear,SecurityAuditPOC_jar,SecurityAuditPOC
            16:44:38,637 INFO  [SettingsFactory] Structured second-level cache entries: disabled
            16:44:38,652 INFO  [SettingsFactory] Echoing all SQL to stdout
            16:44:38,652 INFO  [SettingsFactory] Statistics: disabled
            16:44:38,652 INFO  [SettingsFactory] Deleted entity synthetic identifier rollback: disabled
            16:44:38,652 INFO  [SettingsFactory] Default entity-mode: pojo
            16:44:38,652 INFO  [SettingsFactory] Named query checking : enabled
            16:44:38,730 INFO  [SessionFactoryImpl] building session factory
            16:44:39,309 INFO  [SessionFactoryObjectFactory] Factory name: persistence.units:ear=SecurityAuditPOC.ear,jar=SecurityAuditPOC.jar,unitName=SecurityAuditPOC
            16:44:39,324 INFO  [NamingHelper] JNDI InitialContext properties:{java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory, java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces}
            16:44:39,324 INFO  [SessionFactoryObjectFactory] Bound factory to JNDI name: persistence.units:ear=SecurityAuditPOC.ear,jar=SecurityAuditPOC.jar,unitName=SecurityAuditPOC
            16:44:39,324 WARN  [SessionFactoryObjectFactory] InitialContext did not implement EventContext
            16:44:39,340 INFO  [SchemaUpdate] Running hbm2ddl schema update
            16:44:39,340 INFO  [SchemaUpdate] fetching database metadata
            16:44:39,340 INFO  [SchemaUpdate] updating schema
            16:44:39,731 INFO  [TableMetadata] table found: boIcomsSecurityAuditPOC.dbo.SECURITY_ROLE
            16:44:39,731 INFO  [TableMetadata] columns: [security_role_desc, security_role_name, security_role_id, security_role_ad_group_name]
            16:44:39,731 INFO  [TableMetadata] foreign keys: []
            16:44:39,731 INFO  [TableMetadata] indexes: [pk__security_role__7c8480ae]
            16:44:39,762 INFO  [TableMetadata] table found: boIcomsSecurityAuditPOC.dbo.CUSTOMER
            16:44:39,762 INFO  [TableMetadata] columns: [customer_name, customer_id, customer_desc]
            16:44:39,762 INFO  [TableMetadata] foreign keys: []
            16:44:39,762 INFO  [TableMetadata] indexes: [pk__customer__0daf0cb0]
            16:44:39,762 INFO  [TableMetadata] table found: boIcomsSecurityAuditPOC.dbo.DUMMYPOC
            16:44:39,762 INFO  [TableMetadata] columns: [updatedate, description, insertdate, id]
            16:44:39,762 INFO  [TableMetadata] foreign keys: []
            16:44:39,762 INFO  [TableMetadata] indexes: [pk__dummypoc__15502e78]
            16:44:39,778 INFO  [TableMetadata] table found: boIcomsSecurityAuditPOC.dbo.PAYMENT
            16:44:39,778 INFO  [TableMetadata] columns: [payment_price, payment_desc, customer_id, payment_id, payment_type]
            16:44:39,778 INFO  [TableMetadata] foreign keys: [fkfbe7bde6b7f0186e, fk__payment__custome__108b795b]
            16:44:39,778 INFO  [TableMetadata] indexes: [pk__payment__0f975522]
            16:44:39,793 INFO  [TableMetadata] table found: boIcomsSecurityAuditPOC.dbo.SECURITY_ROLE
            16:44:39,793 INFO  [TableMetadata] columns: [security_role_desc, security_role_name, security_role_id, security_role_ad_group_name]
            16:44:39,793 INFO  [TableMetadata] foreign keys: []
            16:44:39,793 INFO  [TableMetadata] indexes: [pk__security_role__7c8480ae]
            16:44:39,793 INFO  [SchemaUpdate] schema update complete
            16:44:39,809 INFO  [NamingHelper] JNDI InitialContext properties:{java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory, java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces}
            16:44:39,997 INFO  [JmxKernelAbstraction] creating wrapper delegate for: org.jboss.ejb3.stateless.StatelessContainer
            16:44:40,012 INFO  [JmxKernelAbstraction] installing MBean: jboss.j2ee:ear=SecurityAuditPOC.ear,jar=SecurityAuditPOC.jar,name=Authenticator,service=EJB3 with dependencies:
            16:44:40,325 INFO  [EJBContainer] STARTED EJB: com.cox.ejb.session.Authenticator ejbName: Authenticator
            16:44:40,419 INFO  [JmxKernelAbstraction] creating wrapper delegate for: org.jboss.ejb3.stateless.StatelessContainer
            16:44:40,419 INFO  [JmxKernelAbstraction] installing MBean: jboss.j2ee:ear=SecurityAuditPOC.ear,jar=SecurityAuditPOC.jar,name=EJBPollingProcessorBean,service=EJB3 with dependencies:
            16:44:40,450 INFO  [EJBContainer] STARTED EJB: com.cox.ejb.session.EJBPollingProcessorBean ejbName: EJBPollingProcessorBean
            16:44:40,481 INFO  [JmxKernelAbstraction] creating wrapper delegate for: org.jboss.ejb3.stateless.StatelessContainer
            16:44:40,481 INFO  [JmxKernelAbstraction] installing MBean: jboss.j2ee:ear=SecurityAuditPOC.ear,jar=SecurityAuditPOC.jar,name=SecurityRoleManager,service=EJB3 with dependencies:
            16:44:40,497 INFO  [EJBContainer] STARTED EJB: com.cox.ejb.session.SecurityRoleManager ejbName: SecurityRoleManager
            16:44:40,528 INFO  [JmxKernelAbstraction] creating wrapper delegate for: org.jboss.ejb3.stateful.StatefulContainer
            16:44:40,528 INFO  [JmxKernelAbstraction] installing MBean: jboss.j2ee:ear=SecurityAuditPOC.ear,jar=SecurityAuditPOC.jar,name=TestADGroupNameAction,service=EJB3 with dependencies:
            16:44:40,637 INFO  [EJBContainer] STARTED EJB: com.cox.ejb.session.TestADGroupNameAction ejbName: TestADGroupNameAction
            16:44:40,684 INFO  [EJB3Deployer] Deployed: file:/C:/jboss-4.2.1.GA/server/default/tmp/deploy/tmp46683SecurityAuditPOC.ear-contents/SecurityAuditPOC.jar
            16:44:40,731 INFO  [JmxKernelAbstraction] creating wrapper delegate for: org.jboss.ejb3.stateless.StatelessContainer
            16:44:40,731 INFO  [JmxKernelAbstraction] installing MBean: jboss.j2ee:ear=SecurityAuditPOC.ear,jar=jboss-seam.jar,name=TimerServiceDispatcher,service=EJB3 with dependencies:
            16:44:40,794 INFO  [EJBContainer] STARTED EJB: org.jboss.seam.async.TimerServiceDispatcher ejbName: TimerServiceDispatcher
            16:44:41,044 INFO  [JmxKernelAbstraction] creating wrapper delegate for: org.jboss.ejb3.stateful.StatefulContainer
            16:44:41,044 INFO  [JmxKernelAbstraction] installing MBean: jboss.j2ee:ear=SecurityAuditPOC.ear,jar=jboss-seam.jar,name=EjbSynchronizations,service=EJB3 with dependencies:
            16:44:41,153 ERROR [TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
            16:44:41,153 ERROR [TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
            16:44:41,153 ERROR [TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
            16:44:41,153 ERROR [TimerImpl] Error invoking ejbTimeout: java.lang.RuntimeException: java.lang.IllegalStateException: Attempted to invoke a Seam component outside the an initialized application
            16:44:41,153 INFO  [EJBContainer] STARTED EJB: org.jboss.seam.transaction.EjbSynchronizations ejbName: EjbSynchronizations
            16:44:41,185 INFO  [EJB3Deployer] Deployed: file:/C:/jboss-4.2.1.GA/server/default/tmp/deploy/tmp46683SecurityAuditPOC.ear-contents/jboss-seam.jar
            16:44:41,185 INFO  [TomcatDeployer] deploy, ctxPath=/SecurityAuditPOC, warUrl=.../tmp/deploy/tmp46683SecurityAuditPOC.ear-contents/SecurityAuditPOC-exp.war/
            16:44:45,577 INFO  [ServletContextListener] Welcome to Seam 2.0.0.GA



            SFSB:


            @Name("groupNameAction")
            @Stateful
            public class TestADGroupNameAction implements TestADGroupNameLocal {
                 
                 @Logger
                 Log log;
                 
                 @In
                 EJBPollingControllerLocal EJBPollingControllerBean;
                 
                 private String SAMAccountName;
                 
                 //default DN below
                 private String distinguishedName = "CN=!CCI ORG APP - SHIMS Tech,OU=Groups,OU=Orange County,OU=CCI,DC=CORP,DC=COX,DC=com";
                      
                 private Map<String,String> map;
                 
                 public void setDistinguishedName(String distinguishedName) {
                      this.distinguishedName = distinguishedName;
                 }
                 
                 public String getDistinguishedName() {
                      return distinguishedName;
                 }
                 
                 public String getSAMAccountName() {
                      return SAMAccountName;
                 }
                 
                 public void setSAMAccountName(String SAMAccountName) {
                      this.SAMAccountName = SAMAccountName;
                 }
                      
                 //for populating the drop-down
                 public Map<String, String> getMembersOfRoleMap() {          
                      map = EJBPollingControllerBean.getMembersOfRoleMap(distinguishedName);
                      
                      return map;          
                 }
                 
                 //for populating the dataTable
                 /*public List<UserItem> getMembersList() {          
                      return EJBPollingControllerBean.getMembersList(distinguishedName);          
                 }*/
                 
                 @Remove @Destroy
                 public void destroy(){}
                 
            
                 
            
            }



            controller SLSB:


            @Name("EJBPollingControllerBean")
            @Stateless
            @AutoCreate
            public class EJBPollingControllerBean implements EJBPollingControllerLocal
               
            {
               
                @In EJBPollingProcessorLocal EJBPollingProcessorBean;
                
                @Logger Log log;
                   
                public Map<String, String> getMembersOfRoleMap(String distinguishedName){
                     //get the map from the application context of EJBPollingProcessorBean
                     Long pollingInterval = null;
                     
                     Map<String, String> map = EJBPollingProcessorBean.getMap();
                     //only schedule if it hasn't already been scheduled (i.e. only once per server restart on the first client's session)
                     if(map == null) {              
                          String activeDirectoryPollingInterval = CoxProperties.getPropertyObject().getProperty(CoxConstants.ACTIVE_DIRECTORY_POLLING_INTERVAL);
                          if (activeDirectoryPollingInterval != null) {
                               pollingInterval = Long.valueOf(activeDirectoryPollingInterval);
                          }
                          
                          Timer timer = EJBPollingProcessorBean.schedulePoller(today(), pollingInterval, distinguishedName);
                     }
                     return EJBPollingProcessorBean.getMap();
                }
                //below for populating dataTable
                 /*public List<UserItem> getMembersList(String distinguishedName){
                      //get the list from the application context of EJBPollingProcessorBean
                      return null;
                 }*/
                  
                private Date today() {
                     Date date = new Date();
                     return date;
                }
            }



            processor SLSB:


            @Stateless
            @AutoCreate
            @Scope(ScopeType.APPLICATION)
            @Name("EJBPollingProcessorBean")
            public class EJBPollingProcessorBean implements EJBPollingProcessorLocal {
                
                 //TO DO: map needs to be stored in application context as it is session-independent data
                 //TO DO: convert this into an ArrayList of map objects b/c we will need a map
                 // for every drop-down in each app
                private Map<String,String> map; // = new ArrayList<Map<String,String>>();
            
                @Logger Log log;
                
                public Timer schedulePoller(@Expiration Date when, @IntervalDuration Long interval, String distinguishedGroupName) 
                {                   
                     log.info("when = " + when);
                     log.info("interval = " + interval);
                     log.info("distinguishedGroupName = "+distinguishedGroupName);
                     
                     String searchBase = CoxProperties.getPropertyObject().getProperty(CoxConstants.ACTIVE_DIRECTORY_SEARCH_BASE);
                    String providerUrl = CoxProperties.getPropertyObject().getProperty(CoxConstants.ACTIVE_DIRECTORY_PROVIDER_URL);
                    String principal = CoxProperties.getPropertyObject().getProperty(CoxConstants.ACTIVE_DIRECTORY_USER);
                    String credentials = CoxProperties.getPropertyObject().getProperty(CoxConstants.ACTIVE_DIRECTORY_PWD);
            
                    // Declare holders search result's
                    SearchAdapterResult<UserItem> userSearchResults = null;        
                    List<UserItem> userItemList = null;
            
                    // Create a new instance of CADILS search adapter
                    SearchAdapter sa = new SearchAdapter(searchBase, providerUrl, principal, credentials);
            
                    try {
                          String groupSearchFilter = "*)(memberOf=" + distinguishedGroupName;   
                          userSearchResults = sa.searchBySAMAccountName(groupSearchFilter);
            
                          if (userSearchResults.hasItems()) {
                              //List of all the AD users who belong to your group
                               userItemList = userSearchResults.getItemList();
                          }
                    } 
                    catch (SearchFailedException sfe) {
                          log.error(sfe);
                    }
                    Iterator<UserItem> it = userItemList.iterator();
                    
                    if (map != null) { 
                         map.clear();
                    }
                    
                    while(it.hasNext()) {
                         UserItem ui = it.next();
                         log.info("ui.getDisplayName() = " + ui.getDisplayName());
                         log.info("ui.getADSPath() = " + ui.getADSPath());
                                      
                         map.put(ui.getDisplayName(), ui.getSAMAccountName());             
                         log.info("after map.put()");
                    }
            
                    return null;
                }
                
                public Map<String,String> getMap() {
                     return map;
                }
            
                
            }
            

            • 3. Re: Error invoking ejbTimeout
              System Administrator Expert

              I looked at the JMX console and determined that the DefaultDS was being used (HSQLDB). Also, GeneralPurposeDatabasePersistencePlugin class indicates that a table named TIMERS is being created and timer scheduling instances are being inserted into that table.


              I deleted all the records and the errors during startup of JBoss went away. However, this does not address/identify the root cause of the errors...