db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Vemund Ostgaard <Vemund.Ostga...@Sun.COM>
Subject Re: [jira] Commented: (DERBY-1229) sysinfo and sysinfo_withproperties.java fail with java.lang.RuntimePermission getProtectionDomain when db2jcc.jar is in same dir as the derby-jars
Date Fri, 28 Apr 2006 07:36:24 GMT
Bryan Pendleton (JIRA) wrote:

>    [ http://issues.apache.org/jira/browse/DERBY-1229?page=comments#action_12375657 ]

>
>Bryan Pendleton commented on DERBY-1229:
>----------------------------------------
>
>Can you confirm that if you add the following line to derby_tests.policy, the problem
goes away? The line should be added to all three of the derby.jar, derbynet.jar, and derbytools.jar
sections, which is easiest to do if you just search for "DERBY-622" and then add this line
right after it:
>
>permission java.lang.RuntimePermission "getProtectionDomain";
>  
>
Yes, this seems to solve the problem in my environment.

>In some ways, what's confusing about this bug is not that you have to add this line, it's
that nobody else has had to add this line. From what I can tell by reading the Sun javadocs,
everybody should have needed the getProtectionDomain permission, and certainly when I wrote
a simple standalone test program, the program failed unless I gave it the getProtectionDomain
permission. So I don't understand why the rest of us have been getting away without having
this permission in place.
>  
>
I don't have any good answer to this. I know that when I tested two 
builds (one with debug and one without) of the same Derby version here I 
only saw the problem with one of the builds. Possibly it will only 
happen if you have built Derby with a specific setting, or lacking a 
specific setting?

>If you could please try adding the permission to the derby_tests.policy file, and verify
that the sysinfo and sysinfo_withproperties tests then pass, that would be nice. Thanks!
>
>  
>
Yes, both tests pass now. Thank you for looking into this, Bryan. :)

Vemund

>  
>
>>sysinfo and sysinfo_withproperties.java fail with java.lang.RuntimePermission getProtectionDomain
when db2jcc.jar is in same dir as the derby-jars
>>--------------------------------------------------------------------------------------------------------------------------------------------------
>>
>>         Key: DERBY-1229
>>         URL: http://issues.apache.org/jira/browse/DERBY-1229
>>     Project: Derby
>>        Type: Test
>>    
>>
>
>  
>
>>  Components: Security, Test, Tools
>>    Versions: 10.2.0.0
>> Environment: Solaris 10 x86
>>Sun JDK 
>>java version "1.5.0_06"
>>Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_06-b05)
>>Java HotSpot(TM) Client VM (build 1.5.0_06-b05, mixed mode, sharing)
>>    Reporter: Vemund Østgaard
>>    Priority: Minor
>>    
>>
>
>  
>
>>The problem I've been seeing is that if I run:
>>java -Dframework=DerbyNetClient org.apache.derbyTesting.functionTests.harness.RunTest
derbynet/sysinfo.java
>>in a configuration where my db2jcc.jar is located in the same directory as all the
other derby-jars, then the test fails with a diff caused by a RuntimeException. If I change
nothing else then moving that db2jcc.jar out of that directory (and making the appropriate
classpath change) then the test succeeds.
>>The reason is that the test fails to get the permission for doing getProtectionDomain().getCodeSource()
on class com.ibm.db2.jcc.DB2Driver. Below follows relevant output from my system that might
be useful to debug this:
>>---
>>vo136787@khepri32:~/tmp/test> env |grep CLAS CLASSPATH=/home/vo136787/derby/tmp/testbuild/lib/derby.jar:/home/vo136787/derby/tmp/testbuild/lib/derbyTesting.jar:/home/vo136787/derby/tmp/testbuild/lib/derbytools.jar:/home/vo136787/derby/tmp/testbuild/lib/derbynet.jar:/home/vo136787/derby/tmp/testbuild/lib/derbyclient.jar:/home/vo136787/derby/tmp/testbuild/lib/derbyrun.jar:/home/vo136787/derby/tmp/testbuild/lib/junit.jar:/home/vo136787/derby/tmp/testbuild/lib/db2jcc.jar:/home/vo136787/derby/tmp/testbuild/lib/db2jcc_license_c.jar:/home/vo136787/derby/tmp/testbuild/lib/jakarta-oro-2.0.8.jar:/home/vo136787/derby/tmp/testbuild/lib/derbyLocale_de_DE.jar:/home/vo136787/derby/tmp/testbuild/lib/derbyLocale_es.jar:/home/vo136787/derby/tmp/testbuild/lib/derbyLocale_fr.jar:/home/vo136787/derby/tmp/testbuild/lib/derbyLocale_it.jar:/home/vo136787/derby/tmp/testbuild/lib/derbyLocale_ja_JP.jar:/home/vo136787/derby/tmp/testbuild/lib/derbyLocale_ko_KR.jar:/home/vo136787/derby/tmp/testbuild/lib/derbyLocale_pt_BR.jar:/home/vo136787/derby/tmp/testbuild/lib/derbyLocale_zh_CN.jar:/home/vo136787/derby/tmp/testbuild/lib/derbyLocale_zh_TW.jar
>>vo136787@khepri32:~/tmp/test> java -Dframework=DerbyNetClient org.apache.derbyTesting.functionTests.harness.RunTest
derbynet/sysinfo.java
>>*** Start: sysinfo jdk1.5.0_06 DerbyNetClient 2006-04-19 13:00:33 ***
>>Initialize for framework: DerbyNetClient
>>java -Dderby.system.home=/home/vo136787/tmp/test/DerbyNetClient/sysinfo -Djava.security.manager
-Djava.security.policy=/home/vo136787/tmp/test/derby_tests.policy -DderbyTesting.codejar=file:/home/vo136787/derby/tmp/testbuild/lib/
-DderbyTesting.codedir=/home/vo136787/derby/tmp/testbuild/lib -DderbyTesting.serverhost=localhost
-DderbyTesting.clienthost=localhost -DderbyTesting.codeclasses=file://unused/ org.apache.derby.drda.NetworkServerControl
start
>>-- SecurityManager not installed --
>>Attempt to shutdown framework: DerbyNetClient
>>14a15
>>    
>>
>>>[Unable to access Protection Domain or Code Source for class class com.ibm.db2.jcc.DB2Driver:
access denied (java.lang.RuntimePermission getProtectionDomain)] 2.4 - (17)
>>>      
>>>
>>41a43
>>    
>>
>>>[Unable to access Protection Domain or Code Source for class class com.ibm.db2.jcc.DB2Driver:
access denied (java.lang.RuntimePermission getProtectionDomain)] 2.4 - (17)
>>>      
>>>
>>69a72
>>    
>>
>>>[Unable to access Protection Domain or Code Source for class class com.ibm.db2.jcc.DB2Driver:
access denied (java.lang.RuntimePermission getProtectionDomain)] 2.4 - (17)
>>>      
>>>
>>Test Failed.
>>*** End:   sysinfo jdk1.5.0_06 DerbyNetClient 2006-04-19 13:00:40 ***
>>vo136787@khepri32:~/tmp/test> java org.apache.derby.tools.sysinfo
>>------------------ Java Information ------------------
>>Java Version:    1.5.0_06
>>Java Vendor:     Sun Microsystems Inc.
>>Java home:       /usr/jdk/instances/jdk1.5.0/jre
>>Java classpath:  /home/vo136787/derby/tmp/testbuild/lib/derby.jar:/home/vo136787/derby/tmp/testbuild/lib/derbyTesting.jar:/home/vo136787/derby/tmp/testbuild/lib/derbytools.jar:/home/vo136787/derby/tmp/testbuild/lib/derbynet.jar:/home/vo136787/derby/tmp/testbuild/lib/derbyclient.jar:/home/vo136787/derby/tmp/testbuild/lib/derbyrun.jar:/home/vo136787/derby/tmp/testbuild/lib/junit.jar:/home/vo136787/derby/tmp/testbuild/lib/db2jcc.jar:/home/vo136787/derby/tmp/testbuild/lib/db2jcc_license_c.jar:/home/vo136787/derby/tmp/testbuild/lib/jakarta-oro-2.0.8.jar:/home/vo136787/derby/tmp/testbuild/lib/derbyLocale_de_DE.jar:/home/vo136787/derby/tmp/testbuild/lib/derbyLocale_es.jar:/home/vo136787/derby/tmp/testbuild/lib/derbyLocale_fr.jar:/home/vo136787/derby/tmp/testbuild/lib/derbyLocale_it.jar:/home/vo136787/derby/tmp/testbuild/lib/derbyLocale_ja_JP.jar:/home/vo136787/derby/tmp/testbuild/lib/derbyLocale_ko_KR.jar:/home/vo136787/derby/tmp/testbuild/lib/derbyLocale_pt_BR.jar:/home/vo136787/derby/tmp/testbuild/lib/derbyLocale_zh_CN.jar:/home/vo136787/derby/tmp/testbuild/lib/derbyLocale_zh_TW.jar
>>OS name:         SunOS
>>OS architecture: x86
>>OS version:      5.10
>>Java user name:  vo136787
>>Java user home:  /home/vo136787
>>Java user dir:   /home/vo136787/tmp/test
>>java.specification.name: Java Platform API Specification
>>java.specification.version: 1.5
>>--------- Derby Information --------
>>JRE - JDBC: J2SE 5.0 - JDBC 3.0
>>[/home/vo136787/derby/tmp/testbuild/lib/derby.jar] 10.2.0.0 alpha - (394991)
>>[/home/vo136787/derby/tmp/testbuild/lib/derbytools.jar] 10.2.0.0 alpha - (394991)
>>[/home/vo136787/derby/tmp/testbuild/lib/derbynet.jar] 10.2.0.0 alpha - (394991)
>>[/home/vo136787/derby/tmp/testbuild/lib/derbyclient.jar] 10.2.0.0 alpha - (394991)
>>[/home/vo136787/derby/tmp/testbuild/lib/db2jcc.jar] 2.4 - (17)
>>[/home/vo136787/derby/tmp/testbuild/lib/db2jcc_license_c.jar] 2.4 - (17)
>>------------------------------------------------------
>>----------------- Locale Information -----------------
>>Current Locale :  [English/United States [en_US]]
>>Found support for locale: [de_DE]
>>        version: 10.2.0.0 alpha - (394991)
>>Found support for locale: [es]
>>        version: 10.2.0.0 alpha - (394991)
>>Found support for locale: [fr]
>>        version: 10.2.0.0 alpha - (394991)
>>Found support for locale: [it]
>>        version: 10.2.0.0 alpha - (394991)
>>Found support for locale: [ja_JP]
>>        version: 10.2.0.0 alpha - (394991)
>>Found support for locale: [ko_KR]
>>        version: 10.2.0.0 alpha - (394991)
>>Found support for locale: [pt_BR]
>>        version: 10.2.0.0 alpha - (394991)
>>Found support for locale: [zh_CN]
>>        version: 10.2.0.0 alpha - (394991)
>>Found support for locale: [zh_TW]
>>        version: 10.2.0.0 alpha - (394991)
>>------------------------------------------------------
>>vo136787@khepri32:~/tmp/test> java org.apache.derby.tools.sysinfo -cp
>>Testing for presence of all Derby-related libraries; typically, only some are needed.
>>For a list of possible arguments, type java org.apache.derby.tools.sysinfo -cp args
>>FOUND IN CLASS PATH:
>>  Derby embedded engine library (derby.jar)
>>  /home/vo136787/derby/tmp/testbuild/lib/derby.jar
>>  Derby embedded engine library (derby.jar)
>>  /home/vo136787/derby/tmp/testbuild/lib/derby.jar
>>  Derby Network Server library (derbynet.jar)
>>  /home/vo136787/derby/tmp/testbuild/lib/derbynet.jar
>>  Derby Client libraries (db2jcc.jar)
>>  /home/vo136787/derby/tmp/testbuild/lib/db2jcc.jar
>>  Derby Client libraries (derbyclient.jar)
>>  /home/vo136787/derby/tmp/testbuild/lib/derbyclient.jar
>>NOT FOUND IN CLASS PATH:
>>  Derby tools library (derbytools.jar)
>>   (org.apache.derby.tools.ij not found.)
>>    
>>
>
>  
>



Mime
View raw message