Yes. Probably later today. Ralph
> On Oct 18, 2014, at 10:50 AM, Gary Gregory <garydgreg...@gmail.com> wrote: > > Hi Ralph, > > Any chance for an RC this weekend? > > Gary > > On Wed, Oct 15, 2014 at 11:21 AM, Ralph Goers <ralph.go...@dslextreme.com > <mailto:ralph.go...@dslextreme.com>> wrote: > I think we should. I don’t think that is a blocker for a release though. > > I have taken Matt’s suggestion and changed to use defaultThreadPool(). It > seems to work fine in my limited testing. It allowed the Tomcat that was > failing to start up to now start logging correctly. My Tomcat webapp in my > test VM also started and shutdown correctly - although it just uses the > default Tomcat configuration which, I believe, has no security manager. > > Hopefully I can get the release started tonight after work. That depends on > how the day goes though. > > Ralph > > On Oct 15, 2014, at 7:49 AM, Gary Gregory <garydgreg...@gmail.com > <mailto:garydgreg...@gmail.com>> wrote: > >> Should we include a Tomcat policy file as a sample in the distro? >> >> Gary >> >> On Wed, Oct 15, 2014 at 2:09 AM, Ralph Goers <ralph.go...@dslextreme.com >> <mailto:ralph.go...@dslextreme.com>> wrote: >> Well this is downright interesting. I started Tomcat 7 using “./startup.sh >> -security” and both manager and host-manager failed to start, although not >> with access control or security exceptions. The web app with Log4j did fail >> to start but it failed differently. In this case I think we would need to >> require that the catalina policy file be updated as not being able to get a >> ClassLoader is going to break everything. I do notice that catalina.policy >> has a bunch of permissions for JULI, including setContextClassLoader. >> >> I think we need to document what permissions we require. >> >> Ralph >> >> SEVERE: ContainerBase.addChild: start: >> org.apache.catalina.LifecycleException: Failed to start component >> [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/eztax]] >> at >> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154) >> at >> org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901) >> at >> org.apache.catalina.core.ContainerBase.access$000(ContainerBase.java:133) >> at >> org.apache.catalina.core.ContainerBase$PrivilegedAddChild.run(ContainerBase.java:156) >> at >> org.apache.catalina.core.ContainerBase$PrivilegedAddChild.run(ContainerBase.java:145) >> at java.security.AccessController.doPrivileged(Native Method) >> at >> org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:875) >> at >> org.apache.catalina.core.StandardHost.addChild(StandardHost.java:649) >> at >> org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1083) >> at >> org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1880) >> at >> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) >> at java.util.concurrent.FutureTask.run(FutureTask.java:262) >> at >> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) >> at >> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) >> at java.lang.Thread.run(Thread.java:745) >> Caused by: java.lang.ExceptionInInitializerError >> at >> org.apache.logging.log4j.status.StatusLogger.<clinit>(StatusLogger.java:55) >> at >> org.apache.logging.log4j.web.Log4jServletContainerInitializer.<clinit>(Log4jServletContainerInitializer.java:37) >> at java.lang.Class.forName0(Native Method) >> at java.lang.Class.forName(Class.java:270) >> at >> org.apache.catalina.startup.WebappServiceLoader.loadServices(WebappServiceLoader.java:187) >> at >> org.apache.catalina.startup.WebappServiceLoader.load(WebappServiceLoader.java:152) >> at >> org.apache.catalina.startup.ContextConfig.processServletContainerInitializers(ContextConfig.java:1546) >> at >> org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1268) >> at >> org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:876) >> at >> org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:374) >> at >> org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) >> at >> org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90) >> at >> org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5378) >> at >> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) >> ... 14 more >> Caused by: java.security.AccessControlException: access denied >> ("java.lang.RuntimePermission" "getClassLoader") >> at >> java.security.AccessControlContext.checkPermission(AccessControlContext.java:372) >> at >> java.security.AccessController.checkPermission(AccessController.java:559) >> at >> java.lang.SecurityManager.checkPermission(SecurityManager.java:549) >> at >> java.lang.ClassLoader.checkClassLoaderPermission(ClassLoader.java:1561) >> at java.lang.ClassLoader.getSystemClassLoader(ClassLoader.java:1480) >> at >> org.apache.logging.log4j.util.LoaderUtil.findUrlResources(LoaderUtil.java:192) >> at >> org.apache.logging.log4j.util.LoaderUtil.findResources(LoaderUtil.java:183) >> at >> org.apache.logging.log4j.util.PropertiesUtil.<init>(PropertiesUtil.java:90) >> at >> org.apache.logging.log4j.util.PropertiesUtil.<clinit>(PropertiesUtil.java:36) >> ... 28 more >> >> >> >> >> >> On Oct 14, 2014, at 10:07 PM, Ralph Goers <ralph.go...@dslextreme.com >> <mailto:ralph.go...@dslextreme.com>> wrote: >> >>> See the javadoc for Executors.privilegedThreadFactory(). It is documented >>> as checking for that permission and throwing an AccessControlException. >>> Since it is called in the constructor of DefaultShutdownCallbackRegistry it >>> definitely has the potential for throwing an exception, which then causes >>> log4j initialization to fail. That just isn’t acceptable. >>> >>> Ralph >>> >>> >>> On Oct 14, 2014, at 9:45 PM, Matt Sicker <boa...@gmail.com >>> <mailto:boa...@gmail.com>> wrote: >>> >>>> We never use setContextClassLoader though. I'm not sure why that security >>>> exception appears. I don't think there's any harm in fixing that. >>>> >>>> On 14 October 2014 22:59, Ralph Goers <ralph.go...@dslextreme.com >>>> <mailto:ralph.go...@dslextreme.com>> wrote: >>>> Well darn. Matt put an Assert.requiredNonNull on the Registry in >>>> Log4jContextFactory. So even if the exception is caught it can’t be >>>> ignored. Unless I can find a way around this that commit is going to have >>>> to be reverted. >>>> >>>> Ralph >>>> >>>> On Oct 14, 2014, at 7:57 PM, ralph.goers @dslextreme.com >>>> <http://dslextreme.com/> <ralph.go...@dslextreme.com >>>> <mailto:ralph.go...@dslextreme.com>> wrote: >>>> >>>>> I have an app that I was able to run successfully on a vanilla Tomcat. I >>>>> need to check the security settings on te server. Regardless, this >>>>> should not cause initialization to fail. >>>>> >>>>> Ralph >>>>> >>>>> On Tuesday, October 14, 2014, Gary Gregory <garydgreg...@gmail.com >>>>> <mailto:garydgreg...@gmail.com>> wrote: >>>>> IIRC, it looks something Matt was working on recently and he did mention >>>>> working through security issues. Hopefully he will see this message and >>>>> can help out. >>>>> >>>>> It sounds like we need at last one integration tests for Tomcat... >>>>> >>>>> Gary >>>>> >>>>> On Tue, Oct 14, 2014 at 8:30 PM, Ralph Goers <ralph.go...@dslextreme.com >>>>> <>> wrote: >>>>> I am having a bit of trouble with the latest code. Log4j won’t start in >>>>> tomcat due to a security violation. I am not going to go forward with the >>>>> release until I can determine what the problem is and fix it. >>>>> >>>>> Ralph >>>>> >>>>> ERROR StatusLogger Unable to create class >>>>> org.apache.logging.log4j.core.impl.Log4jContextFactory specified in >>>>> jar:file:/usr/local/jakarta-tomcat/webapps/NextivaDriveBilling/WEB-INF/lib/log4j-core-2.1-SNAPSHOT.jar!/META-INF/log4j-provider.properties >>>>> java.security.AccessControlException: access denied >>>>> (java.lang.RuntimePermission setContextClassLoader) >>>>> at >>>>> java.security.AccessControlContext.checkPermission(AccessControlContext.java:374) >>>>> at >>>>> java.util.concurrent.Executors$PrivilegedThreadFactory.<init>(Executors.java:563) >>>>> at >>>>> java.util.concurrent.Executors.privilegedThreadFactory(Executors.java:321) >>>>> at >>>>> org.apache.logging.log4j.core.util.DefaultShutdownCallbackRegistry.<init>(DefaultShutdownCallbackRegistry.java:54) >>>>> at >>>>> org.apache.logging.log4j.core.impl.Log4jContextFactory.createShutdownCallbackRegistry(Log4jContextFactory.java:117) >>>>> at >>>>> org.apache.logging.log4j.core.impl.Log4jContextFactory.<init>(Log4jContextFactory.java:54) >>>>> at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native >>>>> Method) >>>>> at >>>>> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) >>>>> at >>>>> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) >>>>> at java.lang.reflect.Constructor.newInstance(Constructor.java:513) >>>>> at java.lang.Class.newInstance0(Class.java:357) >>>>> at java.lang.Class.newInstance(Class.java:310) >>>>> at >>>>> org.apache.logging.log4j.LogManager.<clinit>(LogManager.java:96) >>>>> at >>>>> org.apache.logging.log4j.core.config.Configurator.getFactory(Configurator.java:154) >>>>> at >>>>> org.apache.logging.log4j.core.config.Configurator.initialize(Configurator.java:109) >>>>> at >>>>> org.apache.logging.log4j.web.Log4jWebInitializerImpl.initializeNonJndi(Log4jWebInitializerImpl.java:157) >>>>> at >>>>> org.apache.logging.log4j.web.Log4jWebInitializerImpl.start(Log4jWebInitializerImpl.java:107) >>>>> at >>>>> org.apache.logging.log4j.web.Log4jServletContextListener.contextInitialized(Log4jServletContextListener.java:45) >>>>> at >>>>> org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3795) >>>>> at >>>>> org.apache.catalina.core.StandardContext.start(StandardContext.java:4252) >>>>> at >>>>> org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:760) >>>>> at >>>>> org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:740) >>>>> at >>>>> org.apache.catalina.core.StandardHost.addChild(StandardHost.java:544) >>>>> at >>>>> org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:884) >>>>> at >>>>> org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:737) >>>>> at >>>>> org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:498) >>>>> at >>>>> org.apache.catalina.startup.HostConfig.start(HostConfig.java:1203) >>>>> at >>>>> org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:319) >>>>> at >>>>> org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:120) >>>>> at >>>>> org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1022) >>>>> at >>>>> org.apache.catalina.core.StandardHost.start(StandardHost.java:736) >>>>> at >>>>> org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1014) >>>>> at >>>>> org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) >>>>> at >>>>> org.apache.catalina.core.StandardService.start(StandardService.java:448) >>>>> at >>>>> org.apache.catalina.core.StandardServer.start(StandardServer.java:700) >>>>> at org.apache.catalina.startup.Catalina.start(Catalina.java:552) >>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >>>>> at >>>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) >>>>> at >>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) >>>>> at java.lang.reflect.Method.invoke(Method.java:597) >>>>> at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:295) >>>>> at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:433) >>>>> >>>>> ERROR StatusLogger Log4j2 could not find a logging implementation. Please >>>>> add log4j-core to the classpath. Using SimpleLogger to log to the >>>>> console... >>>>> ERROR StatusLogger LogManager returned an instance of >>>>> org.apache.logging.log4j.simple.SimpleLoggerContextFactory which does not >>>>> implement org.apache.logging.log4j.core.impl.Log4jContextFactory. Unable >>>>> to initialize Log4j. >>>>> >>>>> >>>>> >>>>> On Oct 14, 2014, at 9:16 AM, Matt Sicker <boa...@gmail.com <>> wrote: >>>>> >>>>>> Oh crap, you're right. >>>>>> >>>>>> On 14 October 2014 11:05, Gary Gregory <garydgreg...@gmail.com <>> wrote: >>>>>> Don't you have to login to Nexus to release though? >>>>>> >>>>>> Gary >>>>>> >>>>>> On Tue, Oct 14, 2014 at 11:34 AM, Matt Sicker <boa...@gmail.com <>> >>>>>> wrote: >>>>>> Question: if I start the release process with everything signed, can >>>>>> someone else complete it when the vote is done? >>>>>> >>>>>> On 13 October 2014 22:26, Ralph Goers <rgo...@apache.org <>> wrote: >>>>>> Matt can't do it so I will. It will be in the next couple of days. >>>>>> >>>>>> Sent from my iPad >>>>>> >>>>>> On Oct 13, 2014, at 7:22 PM, Gary Gregory <garydgreg...@gmail.com <>> >>>>>> wrote: >>>>>> >>>>>>> Hi All: >>>>>>> >>>>>>> I'm sure we are all busy (I am!) but do we have a plan for cutting what >>>>>>> will hopefully be the last 2.1 RC? >>>>>>> >>>>>>> Gary >>>>>>> >>>>>>> -- >>>>>>> E-Mail: garydgreg...@gmail.com <> | ggreg...@apache.org <> >>>>>>> Java Persistence with Hibernate, Second Edition >>>>>>> <http://www.manning.com/bauer3/> >>>>>>> JUnit in Action, Second Edition <http://www.manning.com/tahchiev/> >>>>>>> Spring Batch in Action <http://www.manning.com/templier/> >>>>>>> Blog: http://garygregory.wordpress.com >>>>>>> <http://garygregory.wordpress.com/> >>>>>>> Home: http://garygregory.com/ <http://garygregory.com/> >>>>>>> Tweet! http://twitter.com/GaryGregory <http://twitter.com/GaryGregory> >>>>>> >>>>>> >>>>>> -- >>>>>> Matt Sicker <boa...@gmail.com <>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> E-Mail: garydgreg...@gmail.com <> | ggreg...@apache.org <> >>>>>> Java Persistence with Hibernate, Second Edition >>>>>> <http://www.manning.com/bauer3/> >>>>>> JUnit in Action, Second Edition <http://www.manning.com/tahchiev/> >>>>>> Spring Batch in Action <http://www.manning.com/templier/> >>>>>> Blog: http://garygregory.wordpress.com >>>>>> <http://garygregory.wordpress.com/> >>>>>> Home: http://garygregory.com/ <http://garygregory.com/> >>>>>> Tweet! http://twitter.com/GaryGregory <http://twitter.com/GaryGregory> >>>>>> >>>>>> >>>>>> -- >>>>>> Matt Sicker <boa...@gmail.com <>> >>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> E-Mail: garydgreg...@gmail.com <> | ggreg...@apache.org <> >>>>> Java Persistence with Hibernate, Second Edition >>>>> <http://www.manning.com/bauer3/> >>>>> JUnit in Action, Second Edition <http://www.manning.com/tahchiev/> >>>>> Spring Batch in Action <http://www.manning.com/templier/> >>>>> Blog: http://garygregory.wordpress.com >>>>> <http://garygregory.wordpress.com/> >>>>> Home: http://garygregory.com/ <http://garygregory.com/> >>>>> Tweet! http://twitter.com/GaryGregory <http://twitter.com/GaryGregory> >>>> >>>> >>>> >>>> -- >>>> Matt Sicker <boa...@gmail.com <mailto:boa...@gmail.com>> >>> >> >> >> >> >> -- >> E-Mail: garydgreg...@gmail.com <mailto:garydgreg...@gmail.com> | >> ggreg...@apache.org <mailto:ggreg...@apache.org> >> Java Persistence with Hibernate, Second Edition >> <http://www.manning.com/bauer3/> >> JUnit in Action, Second Edition <http://www.manning.com/tahchiev/> >> Spring Batch in Action <http://www.manning.com/templier/> >> Blog: http://garygregory.wordpress.com <http://garygregory.wordpress.com/> >> Home: http://garygregory.com/ <http://garygregory.com/> >> Tweet! http://twitter.com/GaryGregory <http://twitter.com/GaryGregory> > > > > -- > E-Mail: garydgreg...@gmail.com <mailto:garydgreg...@gmail.com> | > ggreg...@apache.org <mailto:ggreg...@apache.org> > Java Persistence with Hibernate, Second Edition > <http://www.manning.com/bauer3/> > JUnit in Action, Second Edition <http://www.manning.com/tahchiev/> > Spring Batch in Action <http://www.manning.com/templier/> > Blog: http://garygregory.wordpress.com <http://garygregory.wordpress.com/> > Home: http://garygregory.com/ <http://garygregory.com/> > Tweet! http://twitter.com/GaryGregory <http://twitter.com/GaryGregory>