Author: veithen
Date: Thu Sep 20 16:38:49 2012
New Revision: 1388110

URL: http://svn.apache.org/viewvc?rev=1388110&view=rev
Log:
AXIS-1315: Fixed the java2wsdl task so that it loads classes specified using 
<complextype> from the right class loader (i.e. so that it takes into account a 
nested <classpath> element).

Modified:
    
axis/axis1/java/trunk/axis-ant/src/main/java/org/apache/axis/tools/ant/wsdl/ComplexType.java
    
axis/axis1/java/trunk/axis-ant/src/main/java/org/apache/axis/tools/ant/wsdl/Java2WsdlAntTask.java
    axis/axis1/java/trunk/distribution/pom.xml
    axis/axis1/java/trunk/distribution/src/main/files/samples/ejb/ant-build.xml

Modified: 
axis/axis1/java/trunk/axis-ant/src/main/java/org/apache/axis/tools/ant/wsdl/ComplexType.java
URL: 
http://svn.apache.org/viewvc/axis/axis1/java/trunk/axis-ant/src/main/java/org/apache/axis/tools/ant/wsdl/ComplexType.java?rev=1388110&r1=1388109&r2=1388110&view=diff
==============================================================================
--- 
axis/axis1/java/trunk/axis-ant/src/main/java/org/apache/axis/tools/ant/wsdl/ComplexType.java
 (original)
+++ 
axis/axis1/java/trunk/axis-ant/src/main/java/org/apache/axis/tools/ant/wsdl/ComplexType.java
 Thu Sep 20 16:38:49 2012
@@ -48,15 +48,15 @@ public class ComplexType {
         this.namespace = namespace;
     }
     
-    public void register(TypeMapping tm) throws ClassNotFoundException {
-        Class cl = Class.forName(className);
+    public void register(ClassLoader cl, TypeMapping tm) throws 
ClassNotFoundException {
+        Class cls = cl.loadClass(className);
         String localName = className.substring((className.lastIndexOf(".") + 
1));  
         QName qName = new QName(namespace,localName);
         SerializerFactory sf = BaseSerializerFactory.createFactory(
-                                    Class.forName(serializer), cl, qName);
+                                    cl.loadClass(serializer), cls, qName);
         DeserializerFactory df = BaseDeserializerFactory.createFactory(
-                                    Class.forName(deserializer), cl, qName);
+                                    cl.loadClass(deserializer), cls, qName);
         
-        tm.register(cl, qName, sf, df);
+        tm.register(cls, qName, sf, df);
     }
 }
\ No newline at end of file

Modified: 
axis/axis1/java/trunk/axis-ant/src/main/java/org/apache/axis/tools/ant/wsdl/Java2WsdlAntTask.java
URL: 
http://svn.apache.org/viewvc/axis/axis1/java/trunk/axis-ant/src/main/java/org/apache/axis/tools/ant/wsdl/Java2WsdlAntTask.java?rev=1388110&r1=1388109&r2=1388110&view=diff
==============================================================================
--- 
axis/axis1/java/trunk/axis-ant/src/main/java/org/apache/axis/tools/ant/wsdl/Java2WsdlAntTask.java
 (original)
+++ 
axis/axis1/java/trunk/axis-ant/src/main/java/org/apache/axis/tools/ant/wsdl/Java2WsdlAntTask.java
 Thu Sep 20 16:38:49 2012
@@ -144,7 +144,7 @@ public class Java2WsdlAntTask extends Ta
         AntClassLoader cl = new AntClassLoader(getClass().getClassLoader(),
                        getProject(),
                 classpath == null ? createClasspath() : classpath,
-                false);
+                true);
         
         CommandlineJava.SysProperties sysProperties =
                 commandline.getSystemProperties();
@@ -194,7 +194,7 @@ public class Java2WsdlAntTask extends Ta
             TypeMappingDelegate tmi = 
(TypeMappingDelegate)tmr.getDefaultTypeMapping();
             Iterator i = complexTypes.iterator();
             while (i.hasNext()) {
-                ((ComplexType) i.next()).register(tmi);
+                ((ComplexType) i.next()).register(cl, tmi);
             }
             
             if (style != null) {

Modified: axis/axis1/java/trunk/distribution/pom.xml
URL: 
http://svn.apache.org/viewvc/axis/axis1/java/trunk/distribution/pom.xml?rev=1388110&r1=1388109&r2=1388110&view=diff
==============================================================================
--- axis/axis1/java/trunk/distribution/pom.xml (original)
+++ axis/axis1/java/trunk/distribution/pom.xml Thu Sep 20 16:38:49 2012
@@ -93,6 +93,11 @@
                                 <ant 
dir="${project.build.directory}/axis-${project.version}/samples/attachments"/>
                                 <ant 
dir="${project.build.directory}/axis-${project.version}/samples/bidbuy"/>
                                 <ant 
dir="${project.build.directory}/axis-${project.version}/samples/echo"/>
+                                
+                                <property name="deploy.dir" 
value="${project.build.directory}/jboss/deploy"/>
+                                <mkdir dir="${deploy.dir}"/>
+                                <ant 
dir="${project.build.directory}/axis-${project.version}/samples/ejb" 
antfile="ant-build.xml" target="j2w-nicethingsbean"/>
+                                
                                 <ant 
dir="${project.build.directory}/axis-${project.version}/samples/encoding"/>
                                 <ant 
dir="${project.build.directory}/axis-${project.version}/samples/faults"/>
                                 <ant 
dir="${project.build.directory}/axis-${project.version}/samples/handler"/>
@@ -129,6 +134,25 @@
                             <includeArtifactIds>junit</includeArtifactIds>
                         </configuration>
                     </execution>
+                    <execution>
+                        <id>copy-jboss-libs</id>
+                        <phase>pre-integration-test</phase>
+                        <goals>
+                            <goal>copy</goal>
+                        </goals>
+                        <configuration>
+                            <artifactItems>
+                                <artifactItem>
+                                    <groupId>jboss</groupId>
+                                    <artifactId>jboss-j2ee</artifactId>
+                                    <version>3.2.3</version>
+                                </artifactItem>
+                            </artifactItems>
+                            <overWrite>true</overWrite>
+                            
<outputDirectory>${project.build.directory}/jboss/lib</outputDirectory>
+                            <stripVersion>true</stripVersion>
+                        </configuration>
+                    </execution>
                 </executions>
             </plugin>
             <plugin>

Modified: 
axis/axis1/java/trunk/distribution/src/main/files/samples/ejb/ant-build.xml
URL: 
http://svn.apache.org/viewvc/axis/axis1/java/trunk/distribution/src/main/files/samples/ejb/ant-build.xml?rev=1388110&r1=1388109&r2=1388110&view=diff
==============================================================================
--- axis/axis1/java/trunk/distribution/src/main/files/samples/ejb/ant-build.xml 
(original)
+++ axis/axis1/java/trunk/distribution/src/main/files/samples/ejb/ant-build.xml 
Thu Sep 20 16:38:49 2012
@@ -10,7 +10,7 @@
     <property name="axis.dir" location="../../"/>
 
     <path id="classpath.id">
-        <fileset dir="${axis.dir}/build/lib">
+        <fileset dir="${axis.dir}/lib">
             <include name="*.jar"/>
         </fileset>
         <pathelement location="${deploy.dir}/../lib/jboss-j2ee.jar"/>
@@ -89,13 +89,14 @@
                         
namespaceImpl="http://localhost:8080/axis/services/SimpleBean"/> 
     </target>
     
-    <target name="j2w-nicethingsbean">
+    <target name="j2w-nicethingsbean" depends="compile">
         <axis-java2wsdl classname="samples.ejb.NiceThingsBean"
                         
methods="sayHello,findNiceThingsFor,updateNiceThingsFor"
                         output="nicethings.wsdl"
                         
location="http://localhost:8080/axis/services/NiceThingsBean";
                         
namespace="http://localhost:8080/axis/services/NiceThingsBean";
                         
namespaceImpl="http://localhost:8080/axis/services/NiceThingsBean";>
+            <classpath refid="classpath.id"/>
             <complextype classname="samples.ejb.NiceThings"
                          namespace="urn:NiceThingsBean"/>
 <!-- You can also pass in another serializer/deserializer if you don't want to 
use the default 


Reply via email to