Deepal,

The main problem is that when I run Java2WSDL on the interface that
has an import of a class with variables and use that as the argument
to the method, the generated WSDL is rejected by WSDL2Java, unless I
edit the file and remove the duplicate complex type definition. After
that, I am am able to use the file, but it is undesirable from the
perspective that we want to be able to automatically generate a web
service, without human intervention, as we do with Axis2 0.93. The
issue is that the generated WSDL produced by Java2WSDL is incorrect
for what your WSDL2Java can process. I am sure that Anne is correct in
what she says, as she knows a great deal more than I do about WSDL,
but the duplicate complex type is what I wrote the JIRA issue about.

Regards,

Jim

On 6/21/06, Deepal Jayasinghe <[EMAIL PROTECTED]> wrote:
Hi Jim
pls see my comments below;

Jim Bender wrote:

> It appears that the Axis2 Std 1.0 WSDL file generation from a Java
> interface is hard-wired to set the elementFormDefault to
> "unqualified".
>
> By not setting
>
> // java2WsdlBuilder.setSchemaTargetNamespace("");
> // java2WsdlBuilder.setSchemaTargetNamespacePrefix("");
>
> in the Java2WSDLBuilder, I was able to get rid of several problems in
> the generated
> WSDL file.
>
> In the example file, edited by Anne, she had set the
> "elementFormDefault" to
> "qualified", and I looked and there is code in the
> WSDL11ToAxisServiceBuilder
> that is hard-coded to set the elementFormDefault to "unqualified"
> (on line 830). This is the only class that seemed to write the
> "elementFormDefault".

My knowledge on WSDL is not that rich ,so is Axis2 default behaviors
buggy ? I mean setting elementFormDefault="unqualified" is a bug ?
If so I like to fix that

> This is in the daily build for last Friday, June 9th.
> As suggested, I am trying the daily build from Friday, to get the
> latest fixes,
> although that is probably not what we need to be using (we want to use
> the
> Axis2 Std 1.0 release).
>
> BTW, there still seems to be some gratuitous namespace references in
> the generated
> SOAP body, which Anne says should not be there.

I just checked now and it does not generate any namespace element in
SOAP body , its only has <soap:body use="literal"/>

>
> At least, I realized that I had a way to format the WSDL file so that
> it is not
> quite so unreadable. I attached the formatted file that I just
> generated, to see
> if anyone has any ideas. I will test this against the WSDL2Java generator
> to see if it will work, as is.
>
> Regards,
>
>------------------------------------------------------------------------
>
><wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"; xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/"; 
xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"; xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"; xmlns:ns1="http://testexamples/xsd"; 
xmlns:ns="http://PointsCalculator.ve.recursionsw.com/types"; xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"; 
targetNamespace="http://PointsCalculator.ve.recursionsw.com/types";>
>       <wsdl:types>
>               <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"; xmlns:ns="http://testexamples/xsd"; 
targetNamespace="http://testexamples/xsd"; elementFormDefault="unqualified" 
attributeFormDefault="unqualified">
>                       <xs:element type="ns:FoodDescription" 
name="FoodDescription"/>
>                       <xs:complexType name="FoodDescription">
>                               <xs:sequence>
>                                       <xs:element type="xs:int" 
name="calories"/>
>                                       <xs:element type="xs:int" 
name="fatGrams"/>
>                                       <xs:element type="xs:int" 
name="fiberGrams"/>
>                                       <xs:element type="xs:int" 
name="points"/>
>                               </xs:sequence>
>                       </xs:complexType>
>                       <xs:element name="calculatePoints">
>                               <xs:complexType>
>                                       <xs:sequence>
>                                               <xs:element type="ns:FoodDescription" 
name="param0"/>
>                                       </xs:sequence>
>                               </xs:complexType>
>                       </xs:element>
>                       <xs:element name="calculatePointsResponse">
>                               <xs:complexType>
>                                       <xs:sequence>
>                                               <xs:element type="xs:int" 
name="return"/>
>                                       </xs:sequence>
>                               </xs:complexType>
>                       </xs:element>
>                       <xs:complexType name="FoodDescription">
>                               <xs:sequence>
>                                       <xs:element type="xs:int" 
name="calories"/>
>                                       <xs:element type="xs:int" 
name="fatGrams"/>
>                                       <xs:element type="xs:int" 
name="fiberGrams"/>
>                                       <xs:element type="xs:int" 
name="points"/>
>                               </xs:sequence>
>                       </xs:complexType>
>               </xs:schema>
>       </wsdl:types>
>       <wsdl:message name="calculatePointsMessage">
>               <wsdl:part element="ns1:calculatePoints" name="part1"/>
>       </wsdl:message>
>       <wsdl:message name="calculatePointsResponseMessage">
>               <wsdl:part element="ns1:calculatePointsResponse" name="part1"/>
>       </wsdl:message>
>       <wsdl:portType name="PointsCalculatorPortType">
>               <wsdl:operation name="calculatePoints">
>                       <wsdl:input message="ns:calculatePointsMessage"/>
>                       <wsdl:output 
message="ns:calculatePointsResponseMessage"/>
>               </wsdl:operation>
>       </wsdl:portType>
>       <wsdl:binding type="ns:PointsCalculatorPortType" 
name="PointsCalculatorSOAP11Binding">
>               <soap:binding style="document" 
transport="http://schemas.xmlsoap.org/soap/http"/>
>               <wsdl:operation name="calculatePoints">
>                       <soap:operation style="document" 
soapAction="urn:calculatePoints"/>
>                       <wsdl:input>
>                               <soap:body 
namespace="http://PointsCalculator.ve.recursionsw.com/types"; use="literal"/>
>                       </wsdl:input>
>                       <wsdl:output>
>                               <soap:body 
namespace="http://PointsCalculator.ve.recursionsw.com/types"; use="literal"/>
>                       </wsdl:output>
>               </wsdl:operation>
>       </wsdl:binding>
>       <wsdl:binding type="ns:PointsCalculatorPortType" 
name="PointsCalculatorSOAP12Binding">
>               <soap12:binding style="document" 
transport="http://schemas.xmlsoap.org/soap/http"/>
>               <wsdl:operation name="calculatePoints">
>                       <soap12:operation style="document" 
soapAction="urn:calculatePoints"/>
>                       <wsdl:input>
>                               <soap12:body 
namespace="http://PointsCalculator.ve.recursionsw.com/types"; use="literal"/>
>                       </wsdl:input>
>                       <wsdl:output>
>                               <soap12:body 
namespace="http://PointsCalculator.ve.recursionsw.com/types"; use="literal"/>
>                       </wsdl:output>
>               </wsdl:operation>
>       </wsdl:binding>
>       <wsdl:service name="PointsCalculator">
>               <wsdl:port binding="ns:PointsCalculatorSOAP11Binding" 
name="PointsCalculatorSOAP11port">
>                       <soap:address 
location="c:/Java/projects2/axis2-std-1.0testbed\build\wsdlPointsCalculator"/>
>               </wsdl:port>
>               <wsdl:port binding="ns:PointsCalculatorSOAP12Binding" 
name="PointsCalculatorSOAP12port">
>                       <soap12:address 
location="c:/Java/projects2/axis2-std-1.0testbed\build\wsdlPointsCalculator"/>
>               </wsdl:port>
>       </wsdl:service>
></wsdl:definitions>
>
>
>------------------------------------------------------------------------
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: [EMAIL PROTECTED]
>For additional commands, e-mail: [EMAIL PROTECTED]
>

--
Thanks,
Deepal
................................................................
~Future is Open~




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




--
Jim

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to