Hi Jens, There was thread with a similar problem in April, and it turned out that the new Module organization could lead to missing one if you don't use the TapestryFilter directly, like via web.xml:
https://lists.apache.org/thread/ocy882q8tgdyq6j3mjs50mjx4y7l7yod You could try to import the TapestryModule in your AppModule explicitly. Cheers Ben On Mon, Jul 31, 2023 at 7:26 PM Jens Breitenstein <jb// j-b-s...@toc-mailserver.de> wrote: > Hi! > > we are currently trying to upgrade our webapp from T5.4 to T5.8.3 > The migrator did his job, entire applications builds and starts, well, > partly. > > It looks like our migration is incomplete because we use two external > libs "federated-accounts" and "json-bindinding". We made a fork of both, > fixed all compile errors against T5.8.3 and we are able to start the > Quickstart application linked with these modules. > > Unfortunately in our migrated T5.4 application startup fails with: > > 31-Jul-2023 14:20:15.889 SEVERE [RMI TCP Connection(2)-127.0.0.1] > org.apache.catalina.core.StandardContext.filterStart Exception starting > filter [Application] > java.lang.IllegalArgumentException: Contribution > org.tynamo.security.federatedaccounts.services.FederatedAccountsModule.contributeComponentClassResolver(Configuration) > > (at FederatedAccountsModule.java:31) is for service > 'ComponentClassResolver', which does not exist. > at > > org.apache.tapestry5.ioc.internal.RegistryImpl.validateContributeDefs(RegistryImpl.java:298) > at > > org.apache.tapestry5.ioc.internal.RegistryImpl.<init>(RegistryImpl.java:242) > > The method causing the error: > > public static void > contributeComponentClassResolver(Configuration<LibraryMapping> > configuration) { configuration.add(new LibraryMapping(PATH_PREFIX, > "org.tynamo.security.federatedaccounts")); } > > So nothing surprising. > > When debugging "RegistryImpl" indeed "ComponentClassResolver" is missing > as ServiceId in the map serviceIdToModule... > > if (!cd3.isOptional()) { if (cd3.getServiceId() != null) { if > (!this.serviceIdToModule.containsKey(serviceId)) { throw new > IllegalArgumentException(IOCMessages.contributionForNonexistentService(cd)); > > } } else if (!this.isContributionForExistentService(module, cd3)) { > > ...throwing the exception above. > > > Any idea why the core class "ComponentClassResolver" misses? Maybe an > initialization / ordering issue concerning module loading? > > I forgot: all sources build with JAVA 11 without any problems. > > Thanks in advance > > > Jens > >