Dies, Ah, sorry to be bothersome... I tried --implClass and it doesn't work. I also tried -i and it didn't work.
I then tried using all "--" long arg names or all "-" short arg names. Nothing worked. Maybe I should sleep on it and tackle it tomorrow morning. Past experience tells me I never solve the problem when frustrated. Has ANYONE got this to work? Thanks, Vartan --- Dies Koper <[EMAIL PROTECTED]> wrote: > Try: > $ java org.apache.axis.wsdl.Java2WSDL -o family.wsdl \ > --implClass FamilyImpl \ > -l"http://10.196.130.245:8080/axis/services/familyAccounts" \ > -n urn:familyAccounts \ > -p"disney.dis.family" urn:familyAccounts \ > disney.dis.family.Family > > When you use the long option names, use two hyphens. > > Regards, > Dies > > > Rhimbo wrote: > > Hello Dies, > > > > Still having trouble.... I had already tried what you suggested. > > Here is what I did. > > > > $ rm *.class > > $ javac -g FamilyImpl.java > > $ java org.apache.axis.wsdl.Java2WSDL -o family.wsdl \ > > -l"http://10.196.130.245:8080/axis/services/familyAccounts" \ > > -p"disney.dis.family" \ > > urn:familyAccounts disney.dis.family.FamilyImpl > > > > I ran the command from my ../src/disney/dis/family directory. > > I also ran it from the ../src directory (containing the > > ./disney/dis/family directory) > > > > I have no idea what's wrong. > > > > I get a WSDL file. Here is an excerpt: > > > > > > <wsdl:definitions targetNamespace="urn:familyAccounts" > > xmlns:apachesoap="http://xml.apache.org/xml-soap" > > xmlns:impl="urn:familyAccounts" xmlns:intf="urn:familyAccounts" > > xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" > > xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" > > xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" > > xmlns:xsd="http://www.w3.org/2001/XMLSchema"> > > <!--WSDL created by Apache Axis version: 1.3 > > Built on Oct 05, 2005 (05:23:37 EDT)--> > > <wsdl:types> > > <schema targetNamespace="urn:familyAccounts" > > xmlns="http://www.w3.org/2001/XMLSchema"> > > <import namespace="http://schemas.xmlsoap.org/soap/encoding/"/> > > <complexType name="ArrayOf_soapenc_string"> > > <complexContent> > > <restriction base="soapenc:Array"> > > <attribute ref="soapenc:arrayType" > > wsdl:arrayType="soapenc:string[]"/> > > </restriction> > > </complexContent> > > </complexType> > > </schema> > > </wsdl:types> > > > > <wsdl:message name="mainResponse"> > > </wsdl:message> > > > > <wsdl:message name="loginRequest"> > > <wsdl:part name="in0" type="soapenc:string"/> > > <wsdl:part name="in1" type="soapenc:string"/> > > <wsdl:part name="in2" type="soapenc:string"/> > > <wsdl:part name="in3" type="soapenc:string"/> > > <wsdl:part name="in4" type="soapenc:string"/> > > </wsdl:message> > > ... > > > > > > > > Vartan > > > > > > > > > > > > --- Dies Koper <[EMAIL PROTECTED]> wrote: > > > >> Try: > >> javac -g FamilyImpl.java > >> > >> The interface class will NEVER get the original parameter names. > >> > >> Regards, > >> Dies > >> > >> > >> Rhimbo wrote: > >>> Hello again all, > >>> > >>> > >>> Does anyone know how to generate a WSDL that uses the formal > >>> parameter names from the original source file... either the Java > >>> interface or the implement class? > >>> > >>> I've tried every combination I can think of using the -implClass > >>> command line argument to Java2WSDL, but I can't get it to work. > >>> > >>> I want to generate my WSDL so it uses the formal parameter names in > >>> my methods instead of "in0", "in1", etc. > >>> > >>> I found the following URL: > >>> > >>> > > > http://publib.boulder.ibm.com/infocenter/wasinfo/v5r0/index.jsp?topic=/com.ibm.websphere.exp.doc/info/exp/ae/rwbs_java2wsdl.html > >>> This page has a much better explanation that the Apache > >>> documentation. Nevertheless, I still can't generate a WSDL with > >>> my formal parameter names. > >>> > >>> Here is an excerpt from the explanation on the above URL: > >>> > >>> "If the class is compiled without debug information, or if the > >>> class is an interface, the method parameter names are not > >>> available. In this case, you can use the -implClass argument > >>> to provide an alternative class from which to obtain method > >>> parameter names. The impl-class does not need to implement > >>> the class if the class is an interface, but it must implement > >>> the same methods as class. " > >>> > >>> > >>> So I tried the following: > >>> > >>> interface : Family.java > >>> implementing class: FamilyImpl.java > >>> > >>> First try by compiling interface with debug: > >>> > >>> $ javac -g Family.java > >>> $ java org.apache.axis.wsdl.Java2WSDL -o family.wsdl \ > >>> -l"http://10.196.130.245:8080/axis/services/familyAccounts" \ > >>> -n urn:familyAccounts \ > >>> -p"disney.dis.family" urn:familyAccounts \ > >>> disney.dis.family.Family > >>> > >>> > >>> Doesn't work. family.wsdl still has "in0", ... etc. > >>> > >>> Then tried specifying alternate class file containing the > >>> implementation class: > >>> > >>> $ java org.apache.axis.wsdl.Java2WSDL -o family.wsdl \ > >>> -implClass FamilyImpl \ > >>> -l"http://10.196.130.245:8080/axis/services/familyAccounts" \ > >>> -n urn:familyAccounts \ > >>> -p"disney.dis.family" urn:familyAccounts \ > >>> disney.dis.family.Family > >>> > >>> Error: > >>> java.lang.ClassNotFoundException: mplClass > >>> 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:306) > >>> at > >> sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:268) > >>> at java.lang.ClassLoader.loadClass(ClassLoader.java:251) > >>> at > >> org.apache.axis.utils.ClassUtils$2.run(ClassUtils.java:187) > >>> at java.security.AccessController.doPrivileged(Native > Method) > >>> at > >>> org.apache.axis.utils.ClassUtils.loadClass(ClassUtils.java:160) > >>> ... > >>> > >>> "The <class-of-portType> has already been specified as, > >>> FamilyImpl. It cannot be specified again as > >>> disney.dis.family.Family." > >>> Java2WSDL emitter > >>> > >>> > >>> Next tried compiling the FamilyImpl.java file, and then ran above > >>> Java2WSDL command again: > >>> > >>> Got same exception and error message. > >>> > >>> Next, tried: > >>> > >>> $ java org.apache.axis.wsdl.Java2WSDL -o family.wsdl \ > >>> -implClass FamilyImpl \ > >>> -l"http://10.196.130.245:8080/axis/services/familyAccounts" \ > >>> -n urn:familyAccounts \ > >>> -p"disney.dis.family" urn:familyAccounts \ > >>> disney.dis.family.Family > >>> > >>> Error: > >>> "The <class-of-portType> has already been specified as, > >>> FamilyImpl. It cannot be specified again as > >>> disney.dis.family.FamilyImpl. > >>> Java2WSDL emitter" > >>> > >>> > >>> Next, tried: > >>> $ java org.apache.axis.wsdl.Java2WSDL -o family.wsdl \ > >>> -implClass FamilyImpl \ > === message truncated === __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com
