Oops. Yeah, of course. On 3 Nov 2015 09:56, "Stephen Cameron" <[email protected]> wrote:
> this works better > > isis.services.eventbus.allowLateRegistration=true > > :) > > I hope to have it running on Amazon EC2 tomorrow. > > thanks > > On Tue, Nov 3, 2015 at 7:53 PM, Dan Haywood <[email protected]> > wrote: > > > OK, so this is related to ISIS-830. > > > > This ticket requires that the EventBusService is initialized early on (in > > order to post lifecycle events for any domain services that create > objects > > as part of their own @PostConstruct). Previously the event bus service > > would be initialized quite late in the day. > > > > However, other domain services may be subscribers which register with the > > event bus service. This is typically done in their @PostConstruct too. > > > > The event bus service is insisting that all subscriber domain services > > register themselves prior to any domain services that start to create > > objects. That way, no subscribers will "miss" any events. > > > > This can be done using @DomainServiceLayout(menuOrder=...). > > > > To relax this rule, use: > > > > isis.services.eventbus.allowLateRegistration=false > > > > See also [1], [2] > > > > > > I'll add something to the migration notes for 1.10.0-SNAPSHOT. > > > > HTH > > Dan > > > > > > [1] http://isis.apache.org/guides/rg.html#_rg_runtime_configuring-core > > [2] > > > > > http://isis.apache.org/guides/rg.html#_rg_services-api_manpage-EventBusService_Configuration > > > > > > > > > > > > On 3 November 2015 at 08:46, Stephen Cameron <[email protected] > > > > wrote: > > > > > This is the error I am seeing at present > > > > > > seed-users-and-roles-fixture-script : EXEC > > > org.isisaddons.module.security.seed.SeedUsersAndRolesFixtureScript > > > seed-users-and-roles-fixture-script/global-tenancy : EXEC > > > org.isisaddons.module.security.seed.scripts.GlobalTenancy > > > seed-users-and-roles-fixture-script/global-tenancy/Global : Global > > > > > > > > > seed-users-and-roles-fixture-script/isis-module-security-admin-role-and-permissions > > > : EXEC > > > > > > > > > org.isisaddons.module.security.seed.scripts.IsisModuleSecurityAdminRoleAndPermissions > > > > > > > > > seed-users-and-roles-fixture-script/isis-module-security-fixture-role-and-permissions > > > : EXEC > > > > > > > > > org.isisaddons.module.security.seed.scripts.IsisModuleSecurityFixtureRoleAndPermissions > > > > > > > > > seed-users-and-roles-fixture-script/isis-module-security-regular-user-role-and-permissions > > > : EXEC > > > > > > > > > org.isisaddons.module.security.seed.scripts.IsisModuleSecurityRegularUserRoleAndPermissions > > > seed-users-and-roles-fixture-script/isis-module-security-admin-user > > > : EXEC > > > org.isisaddons.module.security.seed.scripts.IsisModuleSecurityAdminUser > > > > > > > > > seed-users-and-roles-fixture-script/isis-applib-fixture-results-role-and-permissions > > > : EXEC > > > > > > > > > org.isisaddons.module.security.seed.scripts.IsisApplibFixtureResultsRoleAndPermissions > > > 19:41:19,478 [IsisTransaction main INFO ] abort > transaction > > > IsisTransaction@5dc1597f[state=MUST_ABORT,commands=1] > > > 19:41:19,495 [IsisWicketApplication main ERROR] Failed to > > > initialize > > > com.google.inject.ProvisionException: Guice provision errors: > > > > > > 1) Error in custom provider, > > > > > > > > > org.apache.isis.core.runtime.system.transaction.IsisTransactionManagerException: > > > java.lang.IllegalStateException: Events have already been posted; too > > late > > > to register any further (singleton) subscribers > > > at > > > > > > > > > org.apache.isis.core.runtime.runner.IsisInjectModule.provideIsisSystem(IsisInjectModule.java:139) > > > at > > > > > > > > > org.apache.isis.core.runtime.runner.IsisInjectModule.provideIsisSystem(IsisInjectModule.java:139) > > > while locating org.apache.isis.core.runtime.system.IsisSystem > > > for field at > > > > > > > > > org.apache.isis.viewer.wicket.viewer.IsisWicketApplication.system(IsisWicketApplication.java:151) > > > while locating domainapp.webapp.DomainApplication > > > > > > 1 error > > > at > > > > > > > > > com.google.inject.internal.Errors.throwProvisionExceptionIfErrorsExist(Errors.java:451) > > > at > > > > > > > > > com.google.inject.internal.MembersInjectorImpl.injectMembers(MembersInjectorImpl.java:65) > > > at > > > > > > > > > com.google.inject.internal.InjectorImpl.injectMembers(InjectorImpl.java:944) > > > at > > > > > > > > > org.apache.isis.viewer.wicket.viewer.IsisWicketApplication.init(IsisWicketApplication.java:265) > > > at > domainapp.webapp.DomainApplication.init(DomainApplication.java:64) > > > at > > org.apache.wicket.Application.initApplication(Application.java:823) > > > at > > > > org.apache.wicket.protocol.http.WicketFilter.init(WicketFilter.java:427) > > > at > > > > org.apache.wicket.protocol.http.WicketFilter.init(WicketFilter.java:351) > > > at > > > > org.eclipse.jetty.servlet.FilterHolder.initialize(FilterHolder.java:137) > > > at > > > > > > > > > org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:854) > > > at > > > > > > > > > org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:346) > > > at > > > > > > org.eclipse.jetty.webapp.WebAppContext.startWebapp(WebAppContext.java:1368) > > > at > > > > > > > > > org.eclipse.jetty.maven.plugin.JettyWebAppContext.startWebapp(JettyWebAppContext.java:320) > > > at > > > > > > > > > org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1335) > > > at > > > > > > > > > org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:735) > > > at > > > > > > > > > org.eclipse.jetty.servlet.ServletContextHandler.doStart(ServletContextHandler.java:259) > > > at > > > org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:511) > > > at > > > > > > > > > org.eclipse.jetty.maven.plugin.JettyWebAppContext.doStart(JettyWebAppContext.java:403) > > > at > > > > > > > > > org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68) > > > at > > > > > > > > > org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:132) > > > at > > > > > > > > > org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:114) > > > at > > > > > > > > > org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:61) > > > at > > > > > > > > > org.eclipse.jetty.server.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:161) > > > at > > > > > > > > > org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68) > > > at > > > > > > > > > org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:132) > > > at > > > > > > > > > org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:114) > > > at > > > > > > > > > org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:61) > > > at > > > > > > > > > org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68) > > > at > > > > > > > > > org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:132) > > > at org.eclipse.jetty.server.Server.start(Server.java:405) > > > at > > > > > > > > > org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:106) > > > at > > > > > > > > > org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:61) > > > at org.eclipse.jetty.server.Server.doStart(Server.java:372) > > > at > > > > > > > > > org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68) > > > at > > > > > > > > > org.eclipse.jetty.maven.plugin.AbstractJettyMojo.startJetty(AbstractJettyMojo.java:457) > > > at > > > > > > > > > org.eclipse.jetty.maven.plugin.AbstractJettyMojo.execute(AbstractJettyMojo.java:328) > > > at > > > > > > org.eclipse.jetty.maven.plugin.JettyRunMojo.execute(JettyRunMojo.java:170) > > > at > > > > > > > > > org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101) > > > at > > > > > > > > > org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209) > > > at > > > > > > > > > org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153) > > > at > > > > > > > > > org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145) > > > at > > > > > > > > > org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84) > > > at > > > > > > > > > org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59) > > > at > > > > > > > > > org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183) > > > at > > > > > > > > > org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161) > > > at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320) > > > at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156) > > > at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537) > > > at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196) > > > at org.apache.maven.cli.MavenCli.main(MavenCli.java:141) > > > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > > > at > > > > > > > > > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > > > at > > > > > > > > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > > > at java.lang.reflect.Method.invoke(Method.java:497) > > > at > > > > > > > > > org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290) > > > at > > > > > > org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230) > > > at > > > > > > > > > org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409) > > > at > > > > org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352) > > > Caused by: > > > > > > > > > org.apache.isis.core.runtime.system.transaction.IsisTransactionManagerException: > > > java.lang.IllegalStateException: Events have already been posted; too > > late > > > to register any further (singleton) subscribers > > > at > > > > > > > > > org.apache.isis.core.runtime.system.IsisSystem.initializeServices(IsisSystem.java:245) > > > at > > > > org.apache.isis.core.runtime.system.IsisSystem.init(IsisSystem.java:209) > > > at > > > > > > > > > org.apache.isis.core.runtime.runner.IsisInjectModule.provideIsisSystem(IsisInjectModule.java:140) > > > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > > > at > > > > > > > > > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > > > at > > > > > > > > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > > > at java.lang.reflect.Method.invoke(Method.java:497) > > > at > > > com.google.inject.internal.ProviderMethod.get(ProviderMethod.java:104) > > > at > > > > > > > > > com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:40) > > > at > > > > > > > > > com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46) > > > at > > > > > > > > > com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1031) > > > at > > > > > > > > > com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40) > > > at com.google.inject.Scopes$1$1.get(Scopes.java:65) > > > at > > > > > > > > > com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:40) > > > at > > > > > > > > > com.google.inject.internal.SingleFieldInjector.inject(SingleFieldInjector.java:53) > > > at > > > > > > > > > com.google.inject.internal.MembersInjectorImpl.injectMembers(MembersInjectorImpl.java:110) > > > at > > > > > > > > > com.google.inject.internal.MembersInjectorImpl$1.call(MembersInjectorImpl.java:75) > > > at > > > > > > > > > com.google.inject.internal.MembersInjectorImpl$1.call(MembersInjectorImpl.java:73) > > > at > > > > > > > > > com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1024) > > > at > > > > > > > > > com.google.inject.internal.MembersInjectorImpl.injectAndNotify(MembersInjectorImpl.java:73) > > > at > > > > > > > > > com.google.inject.internal.MembersInjectorImpl.injectMembers(MembersInjectorImpl.java:60) > > > ... 56 more > > > Caused by: java.lang.IllegalStateException: Events have already been > > > posted; too late to register any further (singleton) subscribers > > > at > > > > > > > > > org.apache.isis.core.runtime.services.eventbus.EventBusServiceDefault.register(EventBusServiceDefault.java:66) > > > at > > > > > > > > > org.apache.isis.applib.AbstractSubscriber.postConstruct(AbstractSubscriber.java:36) > > > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > > > at > > > > > > > > > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > > > at > > > > > > > > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > > > at java.lang.reflect.Method.invoke(Method.java:497) > > > at > > > > > > > > > org.apache.isis.core.commons.lang.MethodExtensions.invoke(MethodExtensions.java:53) > > > at > > > > > > > > > org.apache.isis.core.commons.lang.MethodExtensions.invoke(MethodExtensions.java:47) > > > at > > > > > > > > > org.apache.isis.core.metamodel.specloader.ServiceInitializer.postConstruct(ServiceInitializer.java:118) > > > at > > > > > > > > > org.apache.isis.core.runtime.system.IsisSystem.initializeServices(IsisSystem.java:241) > > > ... 76 more > > > 19:41:19,524 [WicketFilter main ERROR] The > initialization > > > of an application with name 'WicketFilter' has failed. > > > > > > On Tue, Nov 3, 2015 at 7:31 PM, Stephen Cameron < > > > [email protected]> > > > wrote: > > > > > > > I am having problems configuring it, will have another go as I can > see > > > the > > > > demo working but I am assuming the installation instructions are > still > > > the > > > > same. > > > > > > > > > > > > > > > > > >
