[MGNLUI-4010] Missing dependency to commons-collections Created: 08/Sep/16  Updated: 12/Sep/16  Resolved: 08/Sep/16

Status: Closed
Project: Magnolia UI
Component/s: framework
Affects Version/s: 5.4.9
Fix Version/s: 5.4.9

Type: Bug Priority: Blocker
Reporter: Roman Kovařík Assignee: Milan Divilek
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Relates
relates to MGNLUI-3989 Update org.apache.commons:commons-col... Closed
Template:
Acceptance criteria:
Empty
Task DoD:
[ ]* Doc/release notes changes? Comment present?
[ ]* Downstream builds green?
[ ]* Solution information and context easily available?
[ ]* Tests
[ ]* FixVersion filled and not yet released
[ ]  Architecture Decision Record (ADR)
Bug DoR:
[ ]* Steps to reproduce, expected, and actual results filled
[ ]* Affected version filled
Sprint: Kromeriz 60
Story Points: 1

 Description   

Open the security app:

[8:40 AM] Antonín Juran: Caused by: java.lang.NoSuchMethodError: org.apache.commons.collections.MapUtils.isEmpty(Ljava/util/Map;)Z
[8:41 AM] Antonín Juran: 2016-09-08 08:33:29,390 ERROR .magnolia.ui.admincentral.AdmincentralErrorHandler: AdmincentralUI has encountered an unhandled exception.
com.vaadin.server.ServerRpcManager$RpcInvocationException: Unable to invoke method activateApp in info.magnolia.ui.vaadin.gwt.client.magnoliashell.shell.rpc.ShellServerRpc
  at com.vaadin.server.ServerRpcManager.applyInvocation(ServerRpcManager.java:170)
  at com.vaadin.server.ServerRpcManager.applyInvocation(ServerRpcManager.java:118)
  at com.vaadin.server.communication.ServerRpcHandler.handleInvocations(ServerRpcHandler.java:291)
  at com.vaadin.server.communication.ServerRpcHandler.handleRpc(ServerRpcHandler.java:184)
  at com.vaadin.server.communication.UidlRequestHandler.synchronizedHandleRequest(UidlRequestHandler.java:92)
  at com.vaadin.server.SynchronizedRequestHandler.handleRequest(SynchronizedRequestHandler.java:41)
  at com.vaadin.server.VaadinService.handleRequest(VaadinService.java:1408)
  at com.vaadin.server.VaadinServlet.service(VaadinServlet.java:350)
  at info.magnolia.ui.admincentral.AdmincentralVaadinServlet.service(AdmincentralVaadinServlet.java:131)
  at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
  at info.magnolia.cms.filters.ServletDispatchingFilter.doFilter(ServletDispatchingFilter.java:148)
  at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
  at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
  at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81)
  at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81)
  at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81)
  at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81)
  at info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:65)
  at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
  at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
  at info.magnolia.cms.filters.VirtualUriFilter.doFilter(VirtualUriFilter.java:69)
  at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
  at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
  at info.magnolia.module.cache.executor.Bypass.processCacheRequest(Bypass.java:58)
  at info.magnolia.module.cache.executor.CompositeExecutor.processCacheRequest(CompositeExecutor.java:67)
  at info.magnolia.module.cache.filter.CacheFilter.doFilter(CacheFilter.java:174)
  at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:59)
  at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
  at info.magnolia.cms.i18n.I18nContentSupportFilter.doFilter(I18nContentSupportFilter.java:74)
  at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
  at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
  at info.magnolia.cms.filters.RangeSupportFilter.doFilter(RangeSupportFilter.java:84)
  at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
  at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
  at info.magnolia.cms.security.BaseSecurityFilter.doFilter(BaseSecurityFilter.java:57)
  at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
  at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
  at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81)
  at info.magnolia.cms.security.SecurityCallbackFilter.doFilter(SecurityCallbackFilter.java:84)
  at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:59)
  at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
  at info.magnolia.cms.security.LogoutFilter.doFilter(LogoutFilter.java:94)
  at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:59)
  at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
  at info.magnolia.module.site.filters.SiteMergeFilter.doFilter(SiteMergeFilter.java:119)
  at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
  at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
  at info.magnolia.cms.filters.MultiChannelFilter.doFilter(MultiChannelFilter.java:83)
  at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
  at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
  at info.magnolia.module.cache.filter.GZipFilter.doFilter(GZipFilter.java:73)
  at info.magnolia.cms.filters.OncePerRequestAbstractMgnlFilter.doFilter(OncePerRequestAbstractMgnlFilter.java:59)
  at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
  at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81)
  at info.magnolia.cms.security.auth.login.LoginFilter.doFilter(LoginFilter.java:127)
  at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
  at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
  at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81)
  at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:81)
  at info.magnolia.cms.filters.ContentTypeFilter.doFilter(ContentTypeFilter.java:155)
  at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
  at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
  at info.magnolia.cms.filters.ContextFilter.doFilter(ContextFilter.java:128)
  at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
  at info.magnolia.cms.filters.MgnlFilterChain.doFilter(MgnlFilterChain.java:79)
  at info.magnolia.cms.filters.CompositeFilter.doFilter(CompositeFilter.java:65)
  at info.magnolia.cms.filters.AbstractMgnlFilter.doFilter(AbstractMgnlFilter.java:85)
  at info.magnolia.cms.filters.SafeDestroyMgnlFilterWrapper.doFilter(SafeDestroyMgnlFilterWrapper.java:107)
  at info.magnolia.cms.filters.MgnlFilterDispatcher.doDispatch(MgnlFilterDispatcher.java:67)
  at info.magnolia.cms.filters.MgnlMainFilter.doFilter(MgnlMainFilter.java:108)
  at info.magnolia.cms.filters.MgnlMainFilter.doFilter(MgnlMainFilter.java:94)
  at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
  at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
  at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
  at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
  at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505)
  at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
  at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
  at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:956)
  at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
  at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:423)
  at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1079)
  at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:625)
  at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:318)
  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
  at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
  at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.reflect.InvocationTargetException
  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:498)
  at com.vaadin.server.ServerRpcManager.applyInvocation(ServerRpcManager.java:168)
  ... 87 more
Caused by: java.lang.NoSuchMethodError: org.apache.commons.collections.MapUtils.isEmpty(Ljava/util/Map;)Z
  at info.magnolia.ui.framework.tools.ToolsSubApp.onSubAppStart(ToolsSubApp.java:82)
  at info.magnolia.ui.framework.app.BaseSubApp.start(BaseSubApp.java:70)
  at info.magnolia.ui.framework.app.AppInstanceControllerImpl.startSubApp(AppInstanceControllerImpl.java:426)
  at info.magnolia.ui.framework.app.AppInstanceControllerImpl.openSubApp(AppInstanceControllerImpl.java:382)
  at info.magnolia.security.app.SecurityApp.start(SecurityApp.java:70)
  at info.magnolia.ui.framework.app.AppInstanceControllerImpl.start(AppInstanceControllerImpl.java:242)
  at info.magnolia.ui.framework.app.AppControllerImpl.doStartIfNotAlreadyRunning(AppControllerImpl.java:258)
  at info.magnolia.ui.framework.app.AppControllerImpl.onLocationChanged(AppControllerImpl.java:339)
  at info.magnolia.ui.api.location.LocationChangedEvent.dispatch(LocationChangedEvent.java:64)
  at info.magnolia.ui.api.location.LocationChangedEvent.dispatch(LocationChangedEvent.java:42)
  at info.magnolia.event.SimpleEventBus.fireEvent(SimpleEventBus.java:78)
  at info.magnolia.ui.api.location.LocationController.goToWithoutChecks(LocationController.java:103)
  at info.magnolia.ui.api.location.LocationController.goTo(LocationController.java:97)
  at info.magnolia.ui.framework.app.AppControllerImpl.onLocationChanged(AppControllerImpl.java:330)
  at info.magnolia.ui.api.location.LocationChangedEvent.dispatch(LocationChangedEvent.java:64)
  at info.magnolia.ui.api.location.LocationChangedEvent.dispatch(LocationChangedEvent.java:42)
  at info.magnolia.event.SimpleEventBus.fireEvent(SimpleEventBus.java:78)
  at info.magnolia.ui.api.location.LocationController.goToWithoutChecks(LocationController.java:103)
  at info.magnolia.ui.api.location.LocationController.goTo(LocationController.java:97)
  at info.magnolia.ui.api.location.LocationHistoryHandler.handleFragment(LocationHistoryHandler.java:120)
  at info.magnolia.ui.api.location.LocationHistoryHandler.access$100(LocationHistoryHandler.java:49)
  at info.magnolia.ui.api.location.LocationHistoryHandler$1.onFragmentChanged(LocationHistoryHandler.java:79)
  at info.magnolia.ui.api.shell.FragmentChangedEvent.dispatch(FragmentChangedEvent.java:55)
  at info.magnolia.ui.api.shell.FragmentChangedEvent.dispatch(FragmentChangedEvent.java:41)
  at info.magnolia.event.EventHandlerCollection.dispatch(EventHandlerCollection.java:72)
  at info.magnolia.ui.framework.shell.ShellImpl$2.onFragmentChanged(ShellImpl.java:130)
  at info.magnolia.ui.vaadin.magnoliashell.MagnoliaShell.notifyOnFragmentChanged(MagnoliaShell.java:260)
  at info.magnolia.ui.framework.shell.ShellImpl.goToApp(ShellImpl.java:262)
  at info.magnolia.ui.framework.shell.ShellImpl.access$500(ShellImpl.java:78)
  at info.magnolia.ui.framework.shell.ShellImpl$2.goToApp(ShellImpl.java:150)
  at info.magnolia.ui.vaadin.magnoliashell.MagnoliaShell.goToApp(MagnoliaShell.java:130)
  at info.magnolia.ui.vaadin.magnoliashell.rpc.MagnoliaShellRpcDelegate.activateApp(MagnoliaShellRpcDelegate.java:68)
  ... 92 more


 Comments   
Comment by Roman Kovařík [ 08/Sep/16 ]

In the test web app, the library is brought by observation so UI don't fail:

+- info.magnolia:magnolia-module-observation:jar:2.0.5-SNAPSHOT:compile
[INFO] |  +- org.apache.commons:commons-lang3:jar:3.1:compile
[INFO] |  \- org.apache.jackrabbit:jackrabbit-core:jar:2.8.0:compile
[INFO] |     +- concurrent:concurrent:jar:1.3.4:compile
[INFO] |     +- commons-collections:commons-collections:jar:3.2.1:compile
Generated at Mon Feb 12 09:12:21 CET 2024 using Jira 9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b.