[ https://issues.apache.org/jira/browse/FALCON-2050?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15359375#comment-15359375 ]
ASF GitHub Bot commented on FALCON-2050: ---------------------------------------- GitHub user vrangan opened a pull request: https://github.com/apache/falcon/pull/211 FALCON-2050: Configure jetty parent classloader to be prioritized ove⦠Enabled the parent classloader to have priority over the webapp classloader You can merge this pull request into a Git repository by running: $ git pull https://github.com/vrangan/falcon 0.10 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/falcon/pull/211.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #211 ---- commit 825bcd9c7436ebf6da2f114af5b62872e6694e6c Author: Venkat Ranganathan <ven...@hortonworks.com> Date: 2016-07-01T17:59:07Z FALCON-2050: Configure jetty parent classloader to be prioritized over webapp classloader ---- > Configure jetty parent classloader to be prioritized over webapp classloader > ---------------------------------------------------------------------------- > > Key: FALCON-2050 > URL: https://issues.apache.org/jira/browse/FALCON-2050 > Project: Falcon > Issue Type: Bug > Components: common > Affects Versions: 0.10 > Reporter: Venkat Ranganathan > Assignee: Venkat Ranganathan > Fix For: trunk, 0.10 > > Attachments: FALCON-2050.patch > > > FALCON-1942 allowed external libraries to be configured so that libraries > like Atlas hook can be configured (which the Atlas code itself was part of > the Atlas client installation). Unfortunately, the FACLON_EXTRA_CLASSPATH > only is available in the parent classloader and not via the webapp > classloader causing stack trace like below to be thrown > To fix this, we need to enable the parent classloader to have priority over > the webapp classloader. When a class or resource is resolved, the parent > classloader will be used and then the child classloader. > Since all falcon jars are also in the parent path this should fix the issue > with Atlas hook and similar scnearios. > {quote} > 2016-06-24 14:50:47,022 ERROR - [main:] ~ Failed startup of context > org.mortbay.jetty.webapp.WebAppContext@46e481d6{/,/usr/hdp/current/falcon-server/server/webapp/falcon} > (log:87) > java.lang.ClassCastException: org.apache.falcon.atlas.service.AtlasService > cannot be cast to org.apache.falcon.service.FalconService > at > org.apache.falcon.service.ServiceInitializer.initialize(ServiceInitializer.java:43) > at > org.apache.falcon.listener.ContextStartupListener.contextInitialized(ContextStartupListener.java:56) > at > org.mortbay.jetty.handler.ContextHandler.startContext(ContextHandler.java:550) > at org.mortbay.jetty.servlet.Context.startContext(Context.java:136) > at > org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1282) > at > org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:519) > at > org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:499) > at > org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) > at > org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130) > at org.mortbay.jetty.Server.doStart(Server.java:224) > at > org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) > at org.apache.falcon.util.EmbeddedServer.start(EmbeddedServer.java:57) > at org.apache.falcon.FalconServer.main(FalconServer.java:118) > {quote} -- This message was sent by Atlassian JIRA (v6.3.4#6332)