JDK-7039358 : api/java_net/distributed/index.html#NetDistributed failed with AccessControlException under plugin
  • Type: Bug
  • Component: deploy
  • Sub-Component: plugin
  • Affected Version: 7
  • Priority: P3
  • Status: Closed
  • Resolution: Fixed
  • OS: windows
  • CPU: generic
  • Submitted: 2011-04-25
  • Updated: 2013-09-12
  • Resolved: 2011-05-31
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 7
7 b141Fixed
Related Reports
Relates :  
Description
The following JCK-runtime 7 b53 test case failed under plugin on Windows 2008 x64 R2 SP1 system
api/java_net/distributed/index.html#NetDistributed

One of the failed test cases
api/java_net/distributed/index.html#NetDistributed[distributed2006]
is covered by CR 7033142

But others 3
api/java_net/distributed/index.html#NetDistributed[distributed2001]
api/java_net/distributed/index.html#NetDistributed[distributed2002]
api/java_net/distributed/index.html#NetDistributed[distributed2003]
start to fail on SP1 systems (all machines in the lab were updated not so far with SP1) with the exception message like below:

java.security.AccessControlException: access denied ("java.io.FilePermission" "C:\\Users\\root\\AppData\\LocalLow\\Sun\\Java\\Deployment\\cache\\6.0" "read")
    at java.security.AccessControlContext.checkPermission(Unknown Source)
    at java.security.AccessController.checkPermission(Unknown Source)
    at java.lang.SecurityManager.checkPermission(Unknown Source)
    at java.lang.SecurityManager.checkRead(Unknown Source)
    at java.io.File.isDirectory(Unknown Source)
    at com.sun.deploy.cache.CacheUpgrader.getOldDefaultCacheDir(Unknown Source)
    at com.sun.deploy.cache.CacheUpgrader.getInstance(Unknown Source)
    at com.sun.deploy.cache.Cache.getCacheEntry(Unknown Source)
    at com.sun.deploy.cache.Cache.getCacheEntry(Unknown Source)
    at com.sun.deploy.net.DownloadEngine.isUpdateAvailable(Unknown Source)
    at com.sun.deploy.cache.DeployCacheHandler.get(Unknown Source)
    at sun.net.www.protocol.http.HttpURLConnection.plainConnect(Unknown Source)
    at sun.net.www.protocol.http.HttpURLConnection.connect(Unknown Source)
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
    at javasoft.sqe.tests.api.java.net.distributed.NetDistributedTests$1.run(NetDistributedTests.java:444)
    at javasoft.sqe.jck.lib.SecurityTestRunner.runTestWithTCKSM(SecurityTestRunner.java:279)
    at javasoft.sqe.jck.lib.SecurityTestRunner.runTestWithPermissions(SecurityTestRunner.java:235)
    at javasoft.sqe.jck.lib.SecurityTestRunner.runTestWithAllPermissions(SecurityTestRunner.java:157)
    at javasoft.sqe.jck.lib.AllPermissionSM.testRun(AllPermissionSM.java:86)
    at javasoft.sqe.tests.api.java.net.distributed.NetDistributedTests.distributed2001(NetDistributedTests.java:487)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at javasoft.sqe.javatest.lib.TestCases.invokeTestCases(TestCases.java:173)
    at com.sun.jck.lib.DistributedMultiTest.go(DistributedMultiTest.java:57)
    at javasoft.sqe.tests.api.java.net.distributed.NetDistributedTests.go(NetDistributedTests.java:84)
    at com.sun.jck.lib.DistributedTest.run(DistributedTest.java:71)
    at com.sun.jck.lib.DistributedMultiTest.run(DistributedMultiTest.java:35)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.sun.jck.lib.ExecJCKTestSameJVMCmd$Version2Test.execute(ExecJCKTestSameJVMCmd.java:489)
    at com.sun.jck.lib.ExecJCKTestSameJVMCmd$StandardTest.run(ExecJCKTestSameJVMCmd.java:437)
    at com.sun.jck.lib.ExecJCKTestSameJVMCmd.execute(ExecJCKTestSameJVMCmd.java:260)
    at com.sun.jck.lib.ExecJCKTestSameJVMCmd.run(ExecJCKTestSameJVMCmd.java:162)
    at com.sun.javatest.agent.Agent$Task.executeCommand(Agent.java:815)
    at com.sun.javatest.agent.Agent$Task.execute(Agent.java:759)
    at com.sun.javatest.agent.Agent$Task.handleRequest(Agent.java:621)
    at com.sun.javatest.agent.Agent.handleRequestsUntilClosed(Agent.java:392)
    at com.sun.javatest.agent.Agent.access$000(Agent.java:60)
    at com.sun.javatest.agent.Agent$1.run(Agent.java:270)
    at java.lang.Thread.run(Unknown Source)

Not sure is it exactly Java plug-in issue or some environment issue but the problem is very similar to described one in the CR 6463155 where was some scenario detected when the com.sun.jck.lib.DistributedMultiTest won't have necesserily permissions due it was loaded with custome ClassLoader.

Any way the problem is reproducible only under plugin. It is not a regression.