In converting an old Cloudscape test to ensure changes made for
DERBY-538 would not break loading from classes stored in the database when the database itself is in a jar, I discovered that a database cannot be found that is in a jar on the classpath.
Discovered the reason is the StoreFactory implementation for classpath always prepends a leading foward slash to the database name, but this is incorrect (e.g. db7 to /db7). This causes the database not to be found when the classloader is URLClassLoader as the correct path for the service.properties file is db7/services.properties, not /db7/services.properties.
Will add converted test (lang/dbjar.sql)
U java\engine\org\apache\derby\impl\io\CPStorageFactory.java
U java\engine\org\apache\derby\impl\io\CPFile.java
A java\testing\org\apache\derbyTesting\functionTests\tests\lang\dbjar_app.properties
A java\testing\org\apache\derbyTesting\functionTests\tests\lang\dbjar.jar
A java\testing\org\apache\derbyTesting\functionTests\tests\lang\dbjar.sql
A java\testing\org\apache\derbyTesting\functionTests\tests\lang\dbjarUtil.java
U java\testing\org\apache\derbyTesting\functionTests\tests\lang\copyfiles.ant
A java\testing\org\apache\derbyTesting\functionTests\master\dbjar.out
U java\testing\org\apache\derbyTesting\functionTests\suites\derbylang.runall
Updated to revision 240111.