Did you compile the implClass with debug?

On 3/30/06, Rhimbo <[EMAIL PROTECTED]> wrote:
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

Reply via email to