http://nagoya.apache.org/bugzilla/show_bug.cgi?id=1085

*** shadow/1085 Thu Mar 22 22:08:14 2001
--- shadow/1085.tmp.29396       Thu Mar 22 22:08:14 2001
***************
*** 0 ****
--- 1,74 ----
+ +============================================================================+
+ | java task seems to use a different class loader when forked                |
+ +----------------------------------------------------------------------------+
+ |        Bug #: 1085                        Product: Ant                     |
+ |       Status: NEW                         Version: 1.3                     |
+ |   Resolution:                            Platform: PC                      |
+ |     Severity: Normal                   OS/Version: Other                   |
+ |     Priority: Medium                    Component: Core tasks              |
+ +----------------------------------------------------------------------------+
+ |  Assigned To: [EMAIL PROTECTED]                                   |
+ |  Reported By: [EMAIL PROTECTED]                               |
+ |      CC list: Cc:                                                          |
+ +----------------------------------------------------------------------------+
+ |          URL:                                                              |
+ +============================================================================+
+ |                              DESCRIPTION                                   |
+ I have a task description like this:
+     <java classname="RootSuite" fork="true" failonerror="true">
+       <classpath>
+         <pathelement location="${WEBLOGIC_HOME}/lib/weblogic.jar" />
+         <pathelement location="${JUNIT_JAR}" />
+         <pathelement location="${SRC_CLASSES}" />
+         <pathelement location="${TEST_CLASSES}" />
+       </classpath>
+       <sysproperty key="EJB_LIVE_TEST" value="true" />
+       <sysproperty key="java.naming.factory.initial" 
+ value="weblogic.jndi.WLInitialContextFactory" />
+       <sysproperty key="java.naming.provider.url" value="${WEBLOGIC_URL}" />
+       <sysproperty key="java.naming.security.principal" 
+ value="${WEBLOGIC_USER}" />
+       <sysproperty key="java.naming.security.credentials" 
+ value="${WEBLOGIC_PASSWORD}" />
+     </java>
+ 
+ The java class is a unit test. One of the tests tries to establish a 
+ javax.naming.InitialContext for WebLogic. When I run the java task forked, it 
+ works. When I run it not forked, I get the following exception:
+ 
+ javax.naming.NoInitialContextException: Cannot instantiate class: 
weblogic.jndi.
+ WLInitialContextFactory.  Root exception is java.lang.ClassNotFoundException: 
we
+ blogic.jndi.WLInitialContextFactory
+         at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
+         at java.security.AccessController.doPrivileged(Native Method)
+         at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
+         at java.lang.ClassLoader.loadClass(ClassLoader.java:297)
+         at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:286)
+         at java.lang.ClassLoader.loadClass(ClassLoader.java:253)
+         at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:313)
+         at java.lang.Class.forName0(Native Method)
+         at java.lang.Class.forName(Class.java:195)
+         at 
com.sun.naming.internal.VersionHelper12.loadClass(VersionHelper12.jav
+ a:45)
+         at 
javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:6
+ 55)
+         at 
javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:246
+ )
+         at javax.naming.InitialContext.init(InitialContext.java:222)
+         at javax.naming.InitialContext.<init>(InitialContext.java:178)
+         [My Classes]
+         at java.lang.reflect.Method.invoke(Native Method)
+         at 
org.apache.tools.ant.taskdefs.ExecuteJava.execute(ExecuteJava.java:12
+ 7)
+         at org.apache.tools.ant.taskdefs.Java.run(Java.java:260)
+         at org.apache.tools.ant.taskdefs.Java.executeJava(Java.java:123)
+         at org.apache.tools.ant.taskdefs.Java.execute(Java.java:87)
+         at org.apache.tools.ant.Target.execute(Target.java:153)
+         at org.apache.tools.ant.Project.runTarget(Project.java:898)
+         at org.apache.tools.ant.Project.executeTarget(Project.java:536)
+         at org.apache.tools.ant.Project.executeTargets(Project.java:510)
+         at org.apache.tools.ant.Main.runBuild(Main.java:421)
+         at org.apache.tools.ant.Main.main(Main.java:149)
+ 
+ Any ideas? It's not a huge priority (I get around the problem by forking), 
but 
+ it's a nuisance.

Reply via email to