'>' symbol in front of type not being removed by WSDL2Ws from type or class
defintion and the header filename as an unnecessary '_' prefix character.
-----------------------------------------------------------------------------------------------------------------------------------------------------
Key: AXISCPP-862
URL: http://issues.apache.org/jira/browse/AXISCPP-862
Project: Axis-C++
Type: Bug
Components: WSDL processing - Doc
Environment: n/a
Reporter: Fred Preston
The created client stub for the following WSDL is incorrect
<?xml version="1.0" encoding="UTF-8"?>
<definitions xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:tns="http://webservices.amazon.com/AWSECommerceService/2005-07-26"
targetNamespace="http://webservices.amazon.com/AWSECommerceService/2005-07-26">
<types>
<xs:schema
targetNamespace="http://webservices.amazon.com/AWSECommerceService/2005-07-26"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:tns="http://webservices.amazon.com/AWSECommerceService/2005-07-26"
elementFormDefault="qualified">
<xs:element name="ItemSearch">
<xs:complexType>
<xs:sequence>
<xs:element name="SubscriptionId" type="xs:string" minOccurs="0"/>
<xs:element name="AssociateTag" type="xs:string" minOccurs="0"/>
<xs:element name="XMLEscaping" type="xs:string" minOccurs="0"/>
<xs:element name="Validate" type="xs:string" minOccurs="0"/>
<xs:element name="Shared" type="tns:ItemSearchRequest"
minOccurs="0"/>
<xs:element name="Request" type="tns:ItemSearchRequest"
minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:complexType name="ItemSearchRequest">
<xs:sequence>
<xs:element name="Keywords" type="xs:string" minOccurs="0"/>
<xs:element name="SearchIndex" type="xs:string" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:element name="ItemSearchResponse">
<xs:complexType>
<xs:sequence>
<xs:element ref="tns:OperationRequest" minOccurs="0"/>
<xs:element ref="tns:Items" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="OperationRequest">
<xs:complexType>
<xs:sequence>
<xs:element ref="tns:HTTPHeaders" minOccurs="0"/>
<xs:element name="RequestId" type="xs:string" minOccurs="0"/>
<xs:element ref="tns:Arguments" minOccurs="0"/>
<xs:element ref="tns:Errors" minOccurs="0"/>
<xs:element name="RequestProcessingTime" type="xs:float"
minOccurs="0" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Request">
<xs:complexType>
<xs:sequence>
<xs:element name="IsValid" type="xs:string" minOccurs="0"/>
<xs:element name="ItemSearchRequest" type="tns:ItemSearchRequest"
minOccurs="0"/>
<xs:element ref="tns:Errors" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Arguments">
<xs:complexType>
<xs:sequence>
<xs:element name="Argument" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="Name" type="xs:string" use="required"/>
<xs:attribute name="Value" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="HTTPHeaders">
<xs:complexType>
<xs:sequence>
<xs:element name="Header" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="Name" type="xs:string" use="required"/>
<xs:attribute name="Value" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Items">
<xs:complexType>
<xs:sequence>
<xs:element ref="tns:Request" minOccurs="0"/>
<xs:element ref="tns:CorrectedQuery" minOccurs="0"/>
<xs:element name="TotalResults" type="xs:nonNegativeInteger"
minOccurs="0"/>
<xs:element name="TotalPages" type="xs:nonNegativeInteger"
minOccurs="0"/>
<xs:element ref="tns:Item" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="CorrectedQuery">
<xs:complexType>
<xs:sequence>
<xs:element name="Keywords" type="xs:string" minOccurs="0"/>
<xs:element name="Message" type="xs:string" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Item">
<xs:complexType>
<xs:sequence>
<xs:element name="ASIN" type="xs:string"/>
<xs:element ref="tns:Errors" minOccurs="0"/>
<xs:element name="DetailPageURL" type="xs:string" minOccurs="0"/>
<xs:element ref="tns:ItemAttributes" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="ItemAttributes">
<xs:complexType>
<xs:sequence>
<xs:element name="Author" type="xs:string" minOccurs="0"
maxOccurs="unbounded"/>
<xs:element name="ProductGroup" type="xs:string" minOccurs="0"/>
<xs:element name="Title" type="xs:string" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
</types>
<message name="ItemSearchRequestMsg">
<part name="body" element="tns:ItemSearch"/>
</message>
<message name="ItemSearchResponseMsg">
<part name="body" element="tns:ItemSearchResponse"/>
</message>
<portType name="AWSECommerceServicePortType">
<operation name="ItemSearch">
<input message="tns:ItemSearchRequestMsg"/>
<output message="tns:ItemSearchResponseMsg"/>
</operation>
</portType>
<binding name="AWSECommerceServiceBinding"
type="tns:AWSECommerceServicePortType">
<soap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="ItemSearch">
<soap:operation soapAction="http://soap.amazon.com"/>
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
</operation>
</binding>
<service name="AWSECommerceService">
<port name="AWSECommerceServicePort"
binding="tns:AWSECommerceServiceBinding">
<soap:address
location="http://soap.amazon.com/onca/soap?Service=AWSECommerceService"/>
</port>
</service>
</definitions>
Produces the following header file (_Items_Array.hpp)
-------------------------------------------------------------------------
/*
* Copyright 2003-2004 The Apache Software Foundation.
*/
#if !defined(___ITEMS_ARRAY_ARRAY_H__INCLUDED_)
#define ___ITEMS_ARRAY_ARRAY_H__INCLUDED_
class >Items;
typedef struct _Items_ArrayTag
{
>Items* m_Array;
int m_Size;
} _Items_Array;
#endif /* !defined(___ITEMS_ARRAY_ARRAY_H__INCLUDED_)*/
There are two problems with the file:-
1. The type 'Items' is prefixed with a '>' character.
2. The class name should not be prefixed with a '>' character.
3. The filename should not be prefixed with a '_' character.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira