-
Bug
-
Resolution: Fixed
-
Neutral
-
None
-
None
Deprecated methods in module class
info.magnolia.multisite.MultiSiteModule provides add methods to add info.magnolia.module.site.Site and info.magnolia.multisite.sites.matchers.Rule to the respective list/map. These methods shouldn't be used – also taking into account that the sites/rules should only be set once by N2B.
[...].Node2BeanTransformerImpl: Will use deprecated add method [addRule] to populate [rules] in bean class [info.magnolia.multisite.MultiSiteModule].
Inconsistency in additions
The module only adds rules when they contain at least one info.magnolia.multisite.sites.matchers.RequestMatcher (uses same method in add/set function) however setting the site is inconsistent: using the add-method only adds the site when it's enabled, settting all sites doesn't care about it.
List/map should be unmodifiable
Both the list of rules and the map of sites should be unmodifiable. There's currently no scenario where these items should be added during runtime.
java.util.ConcurrentModificationException
We're currently seeing occational exceptions when modifying e.g. the site during runtime and testing the rendering of page – more or less simultaneously – when observation causes a delayed update of the collection and the rendering accesses the site's list (by using templating functions):
[INFO] [talledLocalContainer] 2015-05-05 08:53:21,315 ERROR freemarker.runtime : Error executing FreeMarker template [INFO] [talledLocalContainer] FreeMarker template error: [INFO] [talledLocalContainer] An error has occurred when reading existing sub-variable "teaserLink"; see cause exception! The type of the containing value was: extended_hash+string (info.magnolia.module.templatingkit.templates.components.InternalTeaserModel wrapped into f.e.b.StringModel) [INFO] [talledLocalContainer] [INFO] [talledLocalContainer] ---- [INFO] [talledLocalContainer] FTL stack trace ("~" means nesting-related): [INFO] [talledLocalContainer] - Failed at: ${model.teaserLink} [in template "templating-kit/components/teasers/internalPage.ftl" at line 53, column 64] [INFO] [talledLocalContainer] ---- [INFO] [talledLocalContainer] [INFO] [talledLocalContainer] Java stack trace (for programmers): [INFO] [talledLocalContainer] ---- [INFO] [talledLocalContainer] freemarker.core._TemplateModelException: [... Exception message was already printed; see it above ...] [INFO] [talledLocalContainer] at freemarker.ext.beans.BeanModel.get(BeanModel.java:198) [INFO] [talledLocalContainer] at freemarker.core.Dot._eval(Dot.java:40) [INFO] [talledLocalContainer] at freemarker.core.Expression.eval(Expression.java:76) [INFO] [talledLocalContainer] at freemarker.core.Expression.evalAndCoerceToString(Expression.java:80) [INFO] [talledLocalContainer] at freemarker.core.DollarVariable.accept(DollarVariable.java:40) [INFO] [talledLocalContainer] at freemarker.core.Environment.visit(Environment.java:257) [INFO] [talledLocalContainer] at freemarker.core.MixedContent.accept(MixedContent.java:57) [INFO] [talledLocalContainer] at freemarker.core.Environment.visitByHiddingParent(Environment.java:278) [INFO] [talledLocalContainer] at freemarker.core.ConditionalBlock.accept(ConditionalBlock.java:48) [INFO] [talledLocalContainer] at freemarker.core.Environment.visit(Environment.java:257) [INFO] [talledLocalContainer] at freemarker.core.MixedContent.accept(MixedContent.java:57) [INFO] [talledLocalContainer] at freemarker.core.Environment.visitByHiddingParent(Environment.java:278) [INFO] [talledLocalContainer] at freemarker.core.IfBlock.accept(IfBlock.java:48) [INFO] [talledLocalContainer] at freemarker.core.Environment.visit(Environment.java:257) [INFO] [talledLocalContainer] at freemarker.core.MixedContent.accept(MixedContent.java:57) [INFO] [talledLocalContainer] at freemarker.core.Environment.visit(Environment.java:257) [INFO] [talledLocalContainer] at freemarker.core.Environment.process(Environment.java:235) [INFO] [talledLocalContainer] at freemarker.template.Template.process(Template.java:262) [INFO] [talledLocalContainer] at info.magnolia.freemarker.FreemarkerHelper.render(FreemarkerHelper.java:155) [INFO] [talledLocalContainer] at info.magnolia.rendering.renderer.FreemarkerRenderer.onRender(FreemarkerRenderer.java:96) [INFO] [talledLocalContainer] at info.magnolia.rendering.renderer.AbstractRenderer.render(AbstractRenderer.java:155) [INFO] [talledLocalContainer] at info.magnolia.module.templatingkit.renderers.STKRenderer.render(STKRenderer.java:85) [INFO] [talledLocalContainer] at info.magnolia.rendering.engine.DefaultRenderingEngine.render(DefaultRenderingEngine.java:118) [INFO] [talledLocalContainer] at info.magnolia.rendering.engine.DefaultRenderingEngine.render(DefaultRenderingEngine.java:99) [INFO] [talledLocalContainer] at info.magnolia.rendering.engine.DefaultRenderingEngine.render(DefaultRenderingEngine.java:94) [INFO] [talledLocalContainer] at info.magnolia.rendering.engine.DefaultRenderingEngine$$EnhancerByCGLIB$$6c9284de.render(<generated>) [INFO] [talledLocalContainer] at info.magnolia.templating.elements.ComponentElement.begin(ComponentElement.java:181) [INFO] [talledLocalContainer] at info.magnolia.templating.freemarker.AbstractDirective.execute(AbstractDirective.java:93) [INFO] [talledLocalContainer] at freemarker.core.Environment.visit(Environment.java:333) [INFO] [talledLocalContainer] at freemarker.core.UnifiedCall.accept(UnifiedCall.java:100) [INFO] [talledLocalContainer] at freemarker.core.Environment.visitByHiddingParent(Environment.java:278) [INFO] [talledLocalContainer] at freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:157) [INFO] [talledLocalContainer] at freemarker.core.Environment.visitIteratorBlock(Environment.java:501) [INFO] [talledLocalContainer] at freemarker.core.IteratorBlock.accept(IteratorBlock.java:67) [INFO] [talledLocalContainer] at freemarker.core.Environment.visit(Environment.java:257) [INFO] [talledLocalContainer] at freemarker.core.MixedContent.accept(MixedContent.java:57) [INFO] [talledLocalContainer] at freemarker.core.Environment.visit(Environment.java:257) [INFO] [talledLocalContainer] at freemarker.core.Environment.process(Environment.java:235) [INFO] [talledLocalContainer] at freemarker.template.Template.process(Template.java:262) [INFO] [talledLocalContainer] at info.magnolia.freemarker.FreemarkerHelper.render(FreemarkerHelper.java:155) [INFO] [talledLocalContainer] at info.magnolia.rendering.renderer.FreemarkerRenderer.onRender(FreemarkerRenderer.java:96) [INFO] [talledLocalContainer] at info.magnolia.rendering.renderer.AbstractRenderer.render(AbstractRenderer.java:155) [INFO] [talledLocalContainer] at info.magnolia.module.templatingkit.renderers.STKRenderer.render(STKRenderer.java:85) [INFO] [talledLocalContainer] at info.magnolia.rendering.engine.DefaultRenderingEngine.render(DefaultRenderingEngine.java:118) [INFO] [talledLocalContainer] at info.magnolia.rendering.engine.DefaultRenderingEngine$$EnhancerByCGLIB$$6c9284de.render(<generated>) [INFO] [talledLocalContainer] at info.magnolia.templating.elements.AreaElement.end(AreaElement.java:324) [INFO] [talledLocalContainer] at info.magnolia.templating.freemarker.AbstractDirective.execute(AbstractDirective.java:98) [INFO] [talledLocalContainer] at freemarker.core.Environment.visit(Environment.java:333) [INFO] [talledLocalContainer] at freemarker.core.UnifiedCall.accept(UnifiedCall.java:100) [INFO] [talledLocalContainer] at freemarker.core.Environment.visitByHiddingParent(Environment.java:278) [INFO] [talledLocalContainer] at freemarker.core.IfBlock.accept(IfBlock.java:48) [INFO] [talledLocalContainer] at freemarker.core.Environment.visit(Environment.java:257) [INFO] [talledLocalContainer] at freemarker.core.MixedContent.accept(MixedContent.java:57) [INFO] [talledLocalContainer] at freemarker.core.Environment.visit(Environment.java:257) [INFO] [talledLocalContainer] at freemarker.core.Environment.process(Environment.java:235) [INFO] [talledLocalContainer] at freemarker.template.Template.process(Template.java:262) [INFO] [talledLocalContainer] at info.magnolia.freemarker.FreemarkerHelper.render(FreemarkerHelper.java:155) [INFO] [talledLocalContainer] at info.magnolia.rendering.renderer.FreemarkerRenderer.onRender(FreemarkerRenderer.java:96) [INFO] [talledLocalContainer] at info.magnolia.rendering.renderer.AbstractRenderer.render(AbstractRenderer.java:155) [INFO] [talledLocalContainer] at info.magnolia.module.templatingkit.renderers.STKRenderer.render(STKRenderer.java:85) [INFO] [talledLocalContainer] at info.magnolia.rendering.engine.DefaultRenderingEngine.render(DefaultRenderingEngine.java:118) [INFO] [talledLocalContainer] at info.magnolia.rendering.engine.DefaultRenderingEngine$$EnhancerByCGLIB$$6c9284de.render(<generated>) [INFO] [talledLocalContainer] at info.magnolia.templating.elements.AreaElement.end(AreaElement.java:324) [INFO] [talledLocalContainer] at info.magnolia.templating.freemarker.AbstractDirective.execute(AbstractDirective.java:98) [INFO] [talledLocalContainer] at freemarker.core.Environment.visit(Environment.java:333) [INFO] [talledLocalContainer] at freemarker.core.UnifiedCall.accept(UnifiedCall.java:100) [INFO] [talledLocalContainer] at freemarker.core.Environment.visit(Environment.java:257) [INFO] [talledLocalContainer] at freemarker.core.MixedContent.accept(MixedContent.java:57) [INFO] [talledLocalContainer] at freemarker.core.Environment.visit(Environment.java:257) [INFO] [talledLocalContainer] at freemarker.core.Environment.process(Environment.java:235) [INFO] [talledLocalContainer] at freemarker.template.Template.process(Template.java:262) [INFO] [talledLocalContainer] at info.magnolia.freemarker.FreemarkerHelper.render(FreemarkerHelper.java:155) [INFO] [talledLocalContainer] at info.magnolia.rendering.renderer.FreemarkerRenderer.onRender(FreemarkerRenderer.java:96) [INFO] [talledLocalContainer] at info.magnolia.rendering.renderer.AbstractRenderer.render(AbstractRenderer.java:155) [INFO] [talledLocalContainer] at info.magnolia.module.templatingkit.renderers.STKRenderer.render(STKRenderer.java:85) [INFO] [talledLocalContainer] at info.magnolia.rendering.engine.DefaultRenderingEngine.render(DefaultRenderingEngine.java:118) [INFO] [talledLocalContainer] at info.magnolia.rendering.engine.DefaultRenderingEngine$$EnhancerByCGLIB$$6c9284de.render(<generated>) [INFO] [talledLocalContainer] at info.magnolia.rendering.engine.RenderingFilter.render(RenderingFilter.java:195) [INFO] [talledLocalContainer] at info.magnolia.rendering.engine.RenderingFilter.handleTemplateRequest(RenderingFilter.java:140) [INFO] [talledLocalContainer] at info.magnolia.rendering.engine.RenderingFilter.doFilter(RenderingFilter.java:94) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [INFO] [talledLocalContainer] at info.magnolia.rendering.model.ModelExecutionFilter.doFilter(ModelExecutionFilter.java:100) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:59) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [INFO] [talledLocalContainer] at info.magnolia.personalization.filter.VariantResolverFilter.doFilter(VariantResolverFilter.java:103) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:59) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.AggregatorFilter.doFilter(AggregatorFilter.java:100) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [INFO] [talledLocalContainer] at info.magnolia.cms.security.BaseSecurityFilter.doFilter(BaseSecurityFilter.java:57) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.RepositoryMappingFilter.doFilter(RepositoryMappingFilter.java:108) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:65) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:74) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:65) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.VirtualUriFilter.doFilter(VirtualUriFilter.java:69) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [INFO] [talledLocalContainer] at info.magnolia.module.cache.executor.Bypass.processCacheRequest(Bypass.java:58) [INFO] [talledLocalContainer] at info.magnolia.module.cache.executor.CompositeExecutor.processCacheRequest(CompositeExecutor.java:67) [INFO] [talledLocalContainer] at info.magnolia.module.cache.filter.CacheFilter.doFilter(CacheFilter.java:172) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:59) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [INFO] [talledLocalContainer] at info.magnolia.cms.i18n.I18nContentSupportFilter.doFilter(I18nContentSupportFilter.java:74) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.RangeSupportFilter.doFilter(RangeSupportFilter.java:84) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [INFO] [talledLocalContainer] at info.magnolia.cms.security.BaseSecurityFilter.doFilter(BaseSecurityFilter.java:57) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [INFO] [talledLocalContainer] at info.magnolia.multisite.filters.CrossSiteSecurityFilter.doFilter(CrossSiteSecurityFilter.java:104) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) [INFO] [talledLocalContainer] at info.magnolia.cms.security.SecurityCallbackFilter.doFilter(SecurityCallbackFilter.java:80) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:59) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [INFO] [talledLocalContainer] at info.magnolia.cms.security.LogoutFilter.doFilter(LogoutFilter.java:94) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:59) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [INFO] [talledLocalContainer] at info.magnolia.module.site.filters.SiteMergeFilter.doFilter(SiteMergeFilter.java:119) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [INFO] [talledLocalContainer] at info.magnolia.multisite.filters.MultiSiteFilter.doFilter(MultiSiteFilter.java:104) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MultiChannelFilter.doFilter(MultiChannelFilter.java:83) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [INFO] [talledLocalContainer] at info.magnolia.sitemesh.webapp.MagnoliaSiteMeshFilter.bufferAndPostProcess(MagnoliaSiteMeshFilter.java:74) [INFO] [talledLocalContainer] at org.sitemesh.webapp.contentfilter.ContentBufferingFilter.doFilter(ContentBufferingFilter.java:126) [INFO] [talledLocalContainer] at org.sitemesh.webapp.SiteMeshFilter.doFilter(SiteMeshFilter.java:120) [INFO] [talledLocalContainer] at org.sitemesh.config.ConfigurableSiteMeshFilter.doFilter(ConfigurableSiteMeshFilter.java:163) [INFO] [talledLocalContainer] at info.magnolia.sitemesh.config.MagnoliaConfigurableSiteMeshFilter.doFilter(MagnoliaConfigurableSiteMeshFilter.java:86) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.FilterDecorator.doFilter(FilterDecorator.java:89) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [INFO] [talledLocalContainer] at info.magnolia.module.cache.filter.GZipFilter.doFilter(GZipFilter.java:73) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:59) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) [INFO] [talledLocalContainer] at info.magnolia.cms.security.auth.login.LoginFilter.doFilter(LoginFilter.java:127) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [INFO] [talledLocalContainer] at info.magnolia.enterprise.registration.RegistrationFilter.doFilter(RegistrationFilter.java:56) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.CosMultipartRequestFilter.doFilter(CosMultipartRequestFilter.java:87) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:59) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [INFO] [talledLocalContainer] at info.magnolia.module.devicedetection.filter.DeviceDetectionFilter.doFilter(DeviceDetectionFilter.java:71) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:59) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [INFO] [talledLocalContainer] at info.magnolia.personalization.preview.filter.PreviewFilter.doFilter(PreviewFilter.java:92) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:59) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [INFO] [talledLocalContainer] at info.magnolia.personalization.trait.AbstractTraitDetectorFilter.doFilter(AbstractTraitDetectorFilter.java:61) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [INFO] [talledLocalContainer] at info.magnolia.personalization.trait.AbstractTraitDetectorFilter.doFilter(AbstractTraitDetectorFilter.java:61) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [INFO] [talledLocalContainer] at info.magnolia.personalization.trait.AbstractTraitDetectorFilter.doFilter(AbstractTraitDetectorFilter.java:61) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.ContentTypeFilter.doFilter(ContentTypeFilter.java:112) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.ContextFilter.doFilter(ContextFilter.java:128) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:65) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.SafeDestroyMgnlFilterWrapper.doFilter(SafeDestroyMgnlFilterWrapper.java:107) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlFilterDispatcher.doDispatch(MgnlFilterDispatcher.java:67) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlMainFilter.doFilter(MgnlMainFilter.java:108) [INFO] [talledLocalContainer] at info.magnolia.cms.filters.MgnlMainFilter.doFilter(MgnlMainFilter.java:94) [INFO] [talledLocalContainer] at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212) [INFO] [talledLocalContainer] at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:399) [INFO] [talledLocalContainer] at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) [INFO] [talledLocalContainer] at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182) [INFO] [talledLocalContainer] at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:766) [INFO] [talledLocalContainer] at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:450) [INFO] [talledLocalContainer] at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230) [INFO] [talledLocalContainer] at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114) [INFO] [talledLocalContainer] at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) [INFO] [talledLocalContainer] at org.mortbay.jetty.Server.handle(Server.java:326) [INFO] [talledLocalContainer] at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542) [INFO] [talledLocalContainer] at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:928) [INFO] [talledLocalContainer] at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:549) [INFO] [talledLocalContainer] at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212) [INFO] [talledLocalContainer] at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) [INFO] [talledLocalContainer] at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:410) [INFO] [talledLocalContainer] at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:451) [INFO] [talledLocalContainer] Caused by: java.lang.reflect.InvocationTargetException [INFO] [talledLocalContainer] at sun.reflect.GeneratedMethodAccessor557.invoke(Unknown Source) [INFO] [talledLocalContainer] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [INFO] [talledLocalContainer] at java.lang.reflect.Method.invoke(Method.java:606) [INFO] [talledLocalContainer] at freemarker.ext.beans.BeansWrapper.invokeMethod(BeansWrapper.java:1385) [INFO] [talledLocalContainer] at freemarker.ext.beans.BeanModel.invokeThroughDescriptor(BeanModel.java:254) [INFO] [talledLocalContainer] at freemarker.ext.beans.BeanModel.get(BeanModel.java:158) [INFO] [talledLocalContainer] ... 220 more [INFO] [talledLocalContainer] Caused by: java.util.ConcurrentModificationException [INFO] [talledLocalContainer] at java.util.LinkedHashMap$LinkedHashIterator.nextEntry(LinkedHashMap.java:394) [INFO] [talledLocalContainer] at java.util.LinkedHashMap$ValueIterator.next(LinkedHashMap.java:409) [INFO] [talledLocalContainer] at info.magnolia.multisite.sites.MultiSiteManager.getAssignedSite(MultiSiteManager.java:102) [INFO] [talledLocalContainer] at info.magnolia.multisite.CompoundLinkTransformer.transform(CompoundLinkTransformer.java:53) [INFO] [talledLocalContainer] at info.magnolia.link.LinkUtil.createLink(LinkUtil.java:409) [INFO] [talledLocalContainer] at info.magnolia.link.LinkUtil.createLink(LinkUtil.java:465) [INFO] [talledLocalContainer] at info.magnolia.templating.functions.TemplatingFunctions.link(TemplatingFunctions.java:394) [INFO] [talledLocalContainer] at info.magnolia.module.templatingkit.templates.components.AbstractTeaserModel.getTeaserLink(AbstractTeaserModel.java:105)
Tasks
- Get rid of add-methods
- Make addition of items more consistent: only add valid/enabled entries
- Use unmodifiable list/map for both class members