You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "Ann Robinson (JIRA)" <ji...@apache.org> on 2007/02/19 23:15:06 UTC

[jira] Updated: (AXIS2-2219) Java2 Security exception in Threadpool

     [ https://issues.apache.org/jira/browse/AXIS2-2219?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ann Robinson updated AXIS2-2219:
--------------------------------

    Attachment: patch.txt

This patch updates the ThreadPool object to run the thread creation/setup code section as a privileged section so that it will run in an environment where Java2 security is enabled.  In environments where Java2 security is disabled, the overhead of the privileged section should be minimal.

The patch was created using AXIS2 revision 509253.

Note to committers:  when committing this patch, please be sure to run all tests under AXIS2, including JAXWS (which requires Java 1.5).    The patch was originally developed on AXIS2 revision 508125 where all tests could be run and verified.  However, in the AXIS2 revision 509253, prior to merging the fix to the later revision, the baseline build had problems.



> Java2 Security exception in Threadpool
> --------------------------------------
>
>                 Key: AXIS2-2219
>                 URL: https://issues.apache.org/jira/browse/AXIS2-2219
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>          Components: kernel
>            Reporter: Ann Robinson
>         Attachments: patch.txt
>
>
> In some environments where Java2 Security is enabled, the ThreadPool code will get an AccessControlException where access to create/modify threads/thread groups is denied.
>  Stack Trace:
> java.security.AccessControlException: Access denied (java.lang.RuntimePermission modifyThreadGroup)
> 	at java.security.AccessController.checkPermission(AccessController.java:104)
> 	at java.lang.SecurityManager.checkPermission(SecurityManager.java:547)
> 	at com.ibm.ws.security.core.SecurityManager.checkPermission(SecurityManager.java:189)
> 	at com.ibm.ws.security.core.SecurityManager.checkAccess(SecurityManager.java:309)
> 	at java.lang.ThreadGroup.checkAccess(ThreadGroup.java:216)
> 	at java.lang.Thread.initialize(Thread.java:339)
> 	at java.lang.Thread.<init>(Thread.java:274)
> 	at java.lang.Thread.<init>(Thread.java:167)
> 	at org.apache.axis2.util.threadpool.ThreadPool$1.newThread(ThreadPool.java:102)
> 	at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.addThread(ThreadPoolExecutor.java:419)
> 	at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.addIfUnderCorePoolSize(ThreadPoolExecutor.java:441)
> 	at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:872)
> 	at org.apache.axis2.util.threadpool.ThreadPool.execute(ThreadPool.java:67)
> 	at org.apache.axis2.description.OutInAxisOperationClient.execute(OutInAxisOperation.java:279)
> 	at org.apache.axis2.jaxws.core.controller.AxisInvocationController.execute(AxisInvocationController.java:630)
> 	at org.apache.axis2.jaxws.core.controller.AxisInvocationController.doInvokeAsync(AxisInvocationController.java:261)
> 	at org.apache.axis2.jaxws.core.controller.InvocationController.invokeAsync(InvocationController.java:201)
> 	at org.apache.axis2.jaxws.client.BaseDispatch.invokeAsync(BaseDispatch.java:258)
> .......

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org