[ 
https://issues.apache.org/jira/browse/DERBY-4366?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12750479#action_12750479
 ] 

[email protected] commented on DERBY-4366:
------------------------------------------------

I have done it by a very wrong workaround...breaking java security policy.

I found in ClassLoader.defineClass(..) method, there is hard coding as below
if(name != null && name.startsWith("java."))
    throw new SecurityException("Prohibited package name: " + name.substring(0, 
name.lastIndexOf('.')));

So, I included java.sql.* and javax.sql.* class files package in NetBeans6.7.1 
CDC Emulator runtime environment library itself 
C:\java\netbeans6.7.1\mobility8\Java_ME_platform_SDK_3.0\runtimes\cdc-hi\lib\rt.jar
Thats it !! and all worked. 
But this is absolutely incorrect way.

JavaME - C:\java\netbeans6.7.1\mobility8\Java_ME_platform_SDK_3.0\lib doen't 
comes with jsr169.jar
Derby - C:\java\derby10.5.3.0\lib doen't comes with jsr169.jar
Any Sun provided CDC Emulator also doesn't have jsr169.jar
I am not sure but is this the responsibility of Micro/Mobile/PDA device CVM to 
provide support for jsr169.jar ?

If yes, than ok but I think for JavaME3.0<-->Derby application developement 
purpose, SUN should provide jsr169.jar support in either way by,
CDC Emulator: by including jsr169.jar classes in the CDC Emulator library
OR
Derby database: only when someone want to use Derby in Micro/Mobile/PDA, make 
some modification in Derby build ant task to creates jsr169.jar which is 
accpted in any CDC emulator environment

One thing is clear that Derby has nothing to do with this issue. So really 
sorry to raise this bug. The administrator can close/reject this issue.

But, please correct me if I am wrong and if it sounds reasonable than please 
tell me where should I raise an JavaME3.0 improvement issue ?

> java.lang.SecurityException: Prohibited package name: java.sql when Derby.jar 
> calls jdbcjsr169.jar
> --------------------------------------------------------------------------------------------------
>
>                 Key: DERBY-4366
>                 URL: https://issues.apache.org/jira/browse/DERBY-4366
>             Project: Derby
>          Issue Type: Bug
>          Components: JDBC
>    Affects Versions: 10.5.3.0
>         Environment: WindowsXP(SP3), JDK jdk1.6.0_11 and Netbeans6.7.1(with 
> Mobility8), Derby10.5.3.0
>            Reporter: [email protected]
>         Attachments: CDC_Java_TM__Platform_Micro_Edition_SDK_3.0.xml, 
> JME3-Derby Test.zip
>
>
> (1) I have build JSR169 as per the SUN's instruction 
> http://blogs.sun.com/wittyman/entry/building_jdbc_for_cdc_foundation
> Download JDBC Optional Package for CDC/Foundation Profile from 
> http://java.sun.com/products/jdbc/download.html#cdcfp
> compiled with java version  - jdk1.5.0_20
> cd C:/jdbc_cdc1.0/cdcfoundation/src/share/jdbc/classes/
> mkdir build
> javac -source 1.5 -target 1.5 -bootclasspath 
> C:\java\netbeans6.7.1\mobility8\Java_ME_platform_SDK_3.0\runtimes\cdc-hi\lib\btclasses.zip;C:\java\netbeans6.7.1\mobility8\Java_ME_platform_SDK_3.0\runtimes\cdc-hi\lib\rt.jar
>  -d build java/sql/*.java javax/sql/*.java
> cd build
> jar cvf jsr169.jar java/sql/*.class javax/sql/*.class
> (2)
> Derby10.5.3.0 as per the Apache's instruction 
> http://svn.apache.org/viewvc/db/derby/code/trunk/BUILDING.html?view=co
> compiled with java version  - jdk1.5.0_20
> ant.properties
> --------------
> deprecation=off
> sane=false
> printCompilerProperties=true
> j15lib=C:/java/jdk1.5.0_20/jre/lib;C:/java/jdk1.5.0_20/lib
> java15compile.classpath=C:/java/jdk1.5.0_20/jre/lib/rt.jar;C:/java/jdk1.5.0_20/jre/lib/charsets.jar;C:/java/jdk1.5.0_20/jre/lib/deploy.jar;C:/java/jdk1.5.0_20/jre/lib/javaws.jar;C:/java/jdk1.5.0_20/jre/lib/jce.jar;C:/java/jdk1.5.0_20/jre/lib/jsse.jar;C:/java/jdk1.5.0_20/jre/lib/plugin.jar;C:/java/jdk1.5.0_20/lib/dt.jar;C:/java/jdk1.5.0_20/lib/htmlconverter.jar;C:/java/jdk1.5.0_20/lib/jconsole.jar;C:/java/jdk1.5.0_20/lib/tools.jar
> jsr169compile.classpath=C:/java/netbeans6.7.1/mobility8/Java_ME_platform_SDK_3.0/runtimes/cdc-hi/lib/ext/btclasses.zip;C:/java/netbeans6.7.1/mobility8/Java_ME_platform_SDK_3.0/runtimes/cdc-hi/lib/ext/rt.jar;C:/java/netbeans6.7.1/mobility8/Java_ME_platform_SDK_3.0/runtimes/cdc-hi/lib/ext/jsr169.jar
> cd C:\java\derby10.5.3.0
> ant -quiet clobber
> ant -quiet buildsource
> ant -quiet buildjars
> (3)copied derby.jar,derbytools.jar,jsr169.jar under 
> C:\java\netbeans6.7.1\mobility8\Java_ME_platform_SDK_3.0\runtimes\cdc-hi\lib\ext
> (4)VM argument
> -Xbootclasspath/a:C:/java/netbeans6.7.1/mobility8/Java_ME_platform_SDK_3.0/runtimes/cdc-hi/lib/ext/jsr169.jar
>  -cp 
> C:/java/netbeans6.7.1/mobility8/Java_ME_platform_SDK_3.0/runtimes/cdc-hi/lib/ext/derby.jar;C:/java/netbeans6.7.1/mobility8/Java_ME_platform_SDK_3.0/runtimes/cdc-hi/lib/ext/derbytools.jar
> (5)C:\java\netbeans6.7.1\mobility8\Java_ME_platform_SDK_3.0\runtimes\cdc-hi\lib\security\java.policy
> added below lines to allow java.sql package,
> permission java.lang.RuntimePermission "defineClassInPackage.java.sql";
> permission java.lang.RuntimePermission "accessClassInPackage.java.sql";
> (6)C:\Documents and Settings\Pragun\My 
> Documents\NetBeansProjects\CdcApplication6\nbproject\project.properties
> Compiled this sample application in NetBeans6.7.1 with below compilation 
> options,
> javac.source=1.5 (tried with 1.3 and 1.4 as well)
> javac.target=1.5 (tried with 1.3 and 1.4 as well)
> But still getting error java.lang.SecurityException: Prohibited package name: 
> java.sql

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

Reply via email to