Index: appserver/transaction/internal-api/src/main/java/com/sun/enterprise/transaction/startup/TransactionLifecycleService.java =================================================================== --- appserver/transaction/internal-api/src/main/java/com/sun/enterprise/transaction/startup/TransactionLifecycleService.java (revision 62951) +++ appserver/transaction/internal-api/src/main/java/com/sun/enterprise/transaction/startup/TransactionLifecycleService.java (working copy) @@ -97,7 +97,8 @@ EventListener glassfishEventListener = new EventListener() { @Override public void event(Event event) { - if (event.is(EventTypes.SERVER_READY)) { + //if (event.is(EventTypes.SERVER_READY)) { + if (event.is(EventTypes.SERVER_POST_STARTUP)) { _logger.fine("TM LIFECYCLE SERVICE - ON READY"); onReady(); } else if (event.is(EventTypes.PREPARE_SHUTDOWN)) { Index: nucleus/common/glassfish-api/src/main/java/org/glassfish/api/event/EventTypes.java =================================================================== --- nucleus/common/glassfish-api/src/main/java/org/glassfish/api/event/EventTypes.java (revision 62951) +++ nucleus/common/glassfish-api/src/main/java/org/glassfish/api/event/EventTypes.java (working copy) @@ -66,6 +66,10 @@ public static final EventTypes SERVER_READY = create(SERVER_READY_NAME); public static final EventTypes SERVER_SHUTDOWN = create(SERVER_SHUTDOWN_NAME); public static final EventTypes PREPARE_SHUTDOWN = create(PREPARE_SHUTDOWN_NAME); + + //TangYong fixing GLASSFISH-20934 + public static final String SERVER_POST_STARTUP_NAME = "server_post_startup"; + public static final EventTypes SERVER_POST_STARTUP = create(SERVER_POST_STARTUP_NAME); public static EventTypes create(String name) { return create(name, null); Index: nucleus/core/kernel/src/main/java/com/sun/enterprise/v3/server/AppServerStartup.java =================================================================== --- nucleus/core/kernel/src/main/java/com/sun/enterprise/v3/server/AppServerStartup.java (revision 62951) +++ nucleus/core/kernel/src/main/java/com/sun/enterprise/v3/server/AppServerStartup.java (working copy) @@ -717,6 +717,9 @@ @Override public void onProgress(ChangeableRunLevelFuture future, int achievedLevel) { if (achievedLevel == PostStartupRunLevel.VAL) { + //TangYong fixing GLASSFISH-20934 + events.send(new Event(EventTypes.SERVER_POST_STARTUP), false); + if (logger.isLoggable(level)) { printModuleStatus(systemRegistry, level);