You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by "Kasi, Anand" <An...@sabre-holdings.com> on 2005/12/03 01:25:08 UTC

Axis 1.3 java2wsdl generates proxy differently

Hi, 

We are moving from Axis 1.1 to 1.3 and have an urgent issue. The proxy
client generated is different in 1.3 and is causing problems with our
customers, who have coded their web pages as per the proxy generated by
Axis 1.1

Here is one of the simpler examples. 
See the request structure for one of our service (BrochureCruisePolicy)
below.


BrochureCruisePolicyRequest
<file:///C:\cruise5.x\Training\Documentation\CruiseAPI.html>
<javascript:history.go(-1)> 	
This message requests brochure information concerning a cruise vendors
policies.	

Control <file:///C:\cruise5.x\Training\Documentation\CruiseAPI.html>  -
Mandatory 	
This element serves as a control header for all requests and responses.
The Cruise Vendor should always echo back all information received.	

ProdCruisePolicyRequest
<file:///C:\cruise5.x\Training\Documentation\CruiseAPI.html>  -
Mandatory 	
This element requests information concerning the policies of a cruise
vendor. A maximum of 3 policies may be specified for a single request.	


ProdCruisePolicyRequest
<file:///C:\cruise5.x\Training\Documentation\CruiseAPI.html>
<javascript:history.go(-1)> 	
This element requests information concerning the policies of a cruise
vendor. A maximum of 3 policies may be specified for a single request.	

PolicyCode - Mandatory Integer Array Min 1 Max 2	
A code representing a policy supported by a cruise vendor.Sample Cruise
Policy codes and names include 1 for All Policies, 2 for Air/Sea, 3 for
Cancellation, etc...See the PolicyName Domain Table for actual values.
See the PolicyNameVendor Domain Table for actual values supported by a
Cruise Vendor..	


Within the axis 1.3 generated BrochureCruisePolicyRequest proxy file, it
contains Control object and an integer array, instead of Control and
ProdCruisePolicyRequest object. This problem is occurring every time
there is an object (say Obj A) with only one object (Obj B) inside it.
Axis seems to not generate Obj A at all and declare Obj B in parent of
Obj A. 


Is there any way, I can force axis to generate the proxy exactly like it
is defined in the wsdl. I do not have this issue with Axis 1.1.  





I have pasted the fragment from the wsdl for the example. The entire
wsdl is also attached. 

<complexType name="BrochureCruisePolicyRequest">
                <sequence>
                    <element name="control" nillable="true"
type="tns2:Control"/>
                    <element name="prodCruisePolicyRequest"
nillable="true" type="tns27:ProdCruisePolicyRequest"/>
                </sequence>
            </complexType>


Thanks,
Anand

 <<CruiseWebService13New2.wsdl>> 

Re: Axis 1.3 java2wsdl generates proxy differently

Posted by Davanum Srinivas <da...@gmail.com>.
Anand,

Folks are concentrating on Axis2 at the moment. If this is something
serious and urgent, you will have to get help (See
http://marc.theaimsgroup.com/?l=axis-user&m=113051047826397&w=2).

Thanks,
dims

PS: Full disclosure...my employer is WSO2.

On 12/2/05, Kasi, Anand <An...@sabre-holdings.com> wrote:
>
>
> Hi,
>
> We are moving from Axis 1.1 to 1.3 and have an urgent issue. The proxy
> client generated is different in 1.3 and is causing problems with our
> customers, who have coded their web pages as per the proxy generated by Axis
> 1.1
>
> Here is one of the simpler examples.
>
> See the request structure for one of our service (BrochureCruisePolicy)
> below.
>
>
> BrochureCruisePolicyRequest
>  This message requests brochure information concerning a cruise vendors
> policies.
>
>
> Control - Mandatory
>  This element serves as a control header for all requests and responses. The
> Cruise Vendor should always echo back all information received.
>
>
> ProdCruisePolicyRequest - Mandatory
>  This element requests information concerning the policies of a cruise
> vendor. A maximum of 3 policies may be specified for a single request.
>
>
>
> ProdCruisePolicyRequest
>  This element requests information concerning the policies of a cruise
> vendor. A maximum of 3 policies may be specified for a single request.
>
>
> PolicyCode - Mandatory Integer Array Min 1 Max 2
>  A code representing a policy supported by a cruise vendor.Sample Cruise
> Policy codes and names include 1 for All Policies, 2 for Air/Sea, 3 for
> Cancellation, etc...See the PolicyName Domain Table for actual values. See
> the PolicyNameVendor Domain Table for actual values supported by a Cruise
> Vendor..
>
>
> Within the axis 1.3 generated BrochureCruisePolicyRequest proxy file, it
> contains Control object and an integer array, instead of Control and
> ProdCruisePolicyRequest object. This problem is occurring every time there
> is an object (say Obj A) with only one object (Obj B) inside it. Axis seems
> to not generate Obj A at all and declare Obj B in parent of Obj A.
>
>
> Is there any way, I can force axis to generate the proxy exactly like it is
> defined in the wsdl. I do not have this issue with Axis 1.1.
>
>
>
>
>
> I have pasted the fragment from the wsdl for the example. The entire wsdl is
> also attached.
>
> <complexType name="BrochureCruisePolicyRequest">
>
>                 <sequence>
>
>                     <element name="control" nillable="true"
> type="tns2:Control"/>
>
>                     <element name="prodCruisePolicyRequest" nillable="true"
> type="tns27:ProdCruisePolicyRequest"/>
>
>                 </sequence>
>
>             </complexType>
>
>
> Thanks,
>  Anand
>
>  <<CruiseWebService13New2.wsdl>>
>


--
Davanum Srinivas : http://wso2.com/blogs/