What are the implications of that?  I am assuming there is a reason you wanted 
to use privilegedThreadFactory.

Ralph

On Oct 14, 2014, at 10:54 PM, Matt Sicker <boa...@gmail.com> wrote:

> Ah ok. Two options: catch the exception and fall back to 
> Executors.defaultThreadFactory(), or just use 
> Executors.defaultThreadFactory() by default and allow it to be overridden via 
> the protected constructor.
> 
> On 15 October 2014 00:07, Ralph Goers <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> 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> 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 
>> <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> 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
>>>>> JUnit in Action, Second Edition
>>>>> Spring Batch in Action
>>>>> Blog: http://garygregory.wordpress.com 
>>>>> Home: http://garygregory.com/
>>>>> Tweet! http://twitter.com/GaryGregory
>>>> 
>>>> 
>>>> 
>>>> -- 
>>>> Matt Sicker <boa...@gmail.com>
>>>> 
>>>> 
>>>> 
>>>> -- 
>>>> E-Mail: garydgreg...@gmail.com | ggreg...@apache.org 
>>>> Java Persistence with Hibernate, Second Edition
>>>> JUnit in Action, Second Edition
>>>> Spring Batch in Action
>>>> Blog: http://garygregory.wordpress.com 
>>>> Home: http://garygregory.com/
>>>> Tweet! http://twitter.com/GaryGregory
>>>> 
>>>> 
>>>> 
>>>> -- 
>>>> Matt Sicker <boa...@gmail.com>
>>> 
>>> 
>>> 
>>> 
>>> -- 
>>> E-Mail: garydgreg...@gmail.com | ggreg...@apache.org 
>>> Java Persistence with Hibernate, Second Edition
>>> JUnit in Action, Second Edition
>>> Spring Batch in Action
>>> Blog: http://garygregory.wordpress.com 
>>> Home: http://garygregory.com/
>>> Tweet! http://twitter.com/GaryGregory
>> 
>> 
>> 
>> 
>> -- 
>> Matt Sicker <boa...@gmail.com>
> 
> 
> 
> 
> -- 
> Matt Sicker <boa...@gmail.com>

Reply via email to